# stock_crawler **Repository Path**: aliku110/stock_crawler ## Basic Information - **Project Name**: stock_crawler - **Description**: 股票交易数据的爬虫 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2025-02-17 - **Last Updated**: 2025-02-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # stack_clawer #### 介绍 本工具是从深交所爬股票的分时数据,并写到mysql数据库 #### 软件架构 依赖的第三方库: third/curl_http 基于curl的http请求库 地址 https://gitee.com/ellan-bm/curl_http.git third/mysql_opt 使用mysqlx做mysql连接的库 地址 https://gitee.com/ellan-bm/mysql_opt.git third/RapidJSON 腾讯开源的Json库 地址 https://gitee.com/Tencent/RapidJSON.git 文件及目录结构 stock_crawler工程 |--- stock 爬深交所股票的业务代码的目录 |------|------ common.h 时间和文件的公共操作 |------|------ sz_request.h 头文件 |------|------ sz_request.cpp 深交所股票列表和股票分时数据爬取的业务 |--- third 第三方库源码目录 |------|------ curl_http 自己封装的基于curl的http请求库 地址 https://gitee.com/ellan-bm/curl_http.git |------|------ mysql_opt 使用mysqlx做mysql连接的库 地址 https://gitee.com/ellan-bm/mysql_opt.git |------|------ 腾讯开源的Json库 地址 https://gitee.com/Tencent/RapidJSON.git |--- CMakeLists.txt CMake脚本 |--- config.json mysql的配置文件 |--- stock_crawler.cpp main函数所在的文件 #### 安装教程 1. 创建mysql数据库表 CREATE TABLE t_day_data ( id bigint auto_increment NOT NULL, code varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '股票代码', name varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '股票简称', `close` float(20,2) NULL COMMENT '昨收价', `open` float(20,2) NULL COMMENT '开盘价', now float(20,2) NULL COMMENT '最新价', high float(20,2) NULL COMMENT '最高点', low float(20,2) NULL COMMENT '最低点', volume int NULL COMMENT '成交量(手)', amount float(20,2) NULL COMMENT '成就额(元)', delta float(10,2) NULL COMMENT '涨跌价', delta_percent float(10,4) NULL COMMENT '涨跌幅(%)', market_time datetime NULL COMMENT '时间', `date` date NULL COMMENT '交易的日期', CONSTRAINT `PRIMARY` PRIMARY KEY (id), CONSTRAINT t_day_data_UN UNIQUE KEY (code,`date`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT=''; CREATE TABLE t_minute_data ( id bigint auto_increment NOT NULL, day_id bigint NULL COMMENT 't_day_data表id', `time` time NULL COMMENT '股票简称', now float(20,2) NULL COMMENT '最新价', avarge_price float(20,2) NULL COMMENT '平均价', low float(20,2) NULL COMMENT '最低点', volume int NULL COMMENT '成交量(手)', amount float(20,2) NULL COMMENT '成就额(元)', delta float(10,2) NULL COMMENT '涨跌价', delta_percent float(10,4) NULL COMMENT '涨跌幅(%)', CONSTRAINT `PRIMARY` PRIMARY KEY (id), CONSTRAINT t_minute_data_UN UNIQUE KEY (day_id,`time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT=''; 2. 需用到CMake git等工具,并且编译器要支持C++17,如果编译器不支持C++17需要修改代码中的 还依赖了curl库以及mysql-connector-c++库 $ git clone https://gitee.com/ellan-bm/stock_crawler.git $ cd stock_crawler $ git submodule update --init $ git submodule foreach 'git checkout master' $ cmake -Bbuild -H. $ cd build & make 3. curl/mysql-connector-c++库的编译安装可以参照官方的教程 #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)