# shfe **Repository Path**: fzu520/shfe ## Basic Information - **Project Name**: shfe - **Description**: 期货交易数据爬虫测试 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2024-07-19 - **Last Updated**: 2024-07-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # shfe #### 介绍 期货交易数据爬虫 #### 软件架构 软件架构说明 1. 开发平台 pycharm 2. 第三方库 apscheduler + pymysql + sqlalchemy #### 使用说明 1. 通过python scheduler.py --generate 生成默认配置 2. 通过python scheduler.py --config shfe.yaml --run 运行脚本 3. 定时采用cron表达式,默认为 * */1 * * * 4. 数据过滤采用自写标签语法进行数据过滤 #### 标签语法介绍 1. 语法结构 ``` rules: - id: - '*' ref: '&' conditions: - tag: 交割月份 Eq: "2304" ``` ##### 所有的过滤语法方在rules下,rules为一个list ##### 一个语句由 id + ref + conditions组成, id为必选关键字,ref、conditions可以为空,id对应要过滤的数据以为标识,假如铜的ID为cu ##### ref用来表述conditions之间的关系,支持&、|两种关键字,&代表所有条件必选满足,|代表满足任意条件 ##### condtions 也是一个list,可以包含多个条件,由tag + 条件语法组成,条件语法支持四种分别是Eq、Gt、Gte、Lt、Lte、In分别达标等于、大于、大于等于、小于、 ##### 小于等于、是否包含, 注意字符串类的需要加引号,数字和字符串可能造成歧义 ##### 比如上述过滤语法代表过滤出只有交割月份等于2304的所有期货的数据