C++ 炒股软件
鄙人已有两年股龄,略有收益,想把自己的炒股思路数据化,设计出一款属于自己的炒股软件,主要有两个问题,股票相关的编码技术算法和股票数据来源。主要还是数据,新浪有对外开放的数据,但是极其有限,想来想去,想从同花顺财经获取数据来源,下了个客户端登录抓包分析。
同花顺 是一款炒股软件,包含丰富的股票咨询信息,以及上市公司的资料信息。
经过第一轮观察发现,同花顺桌面版本客户端,访问了N个IP,具体IP的左右也不是很清楚,但是想想,获取股票数据的服务器应该只有一个,但是,先用Windows的资源管理器观察一下所有IP看下情况,当然,如果有明显的下载流程可以观察数据量当然更好。
so,要做的第一件事,百度得知,工具、数据下载获取数据:
同花顺财经登录发送三个HTTP GET 请求,内容涉及个人账户,不做详细描述。
GetPubKey GetSessionID (到这个步骤,如果账户密码都正确,则验证成功)
登陆成功后,获取cookie_domain
< item domain=“http://10jqka.com.cn”/> 同花顺财经官网-首页 IP:122.224.106.17
< item domain=“http://iwencai.com”/> i问财智能投顾 IP:122.224.106.15
< item domain=“http://0033.com”/> 同花顺财经官网-首页 IP:122.224.106.17
< item domain=“http://300033.info”/> 同花顺财经官网-首页 IP:122.224.106.17
< item domain=“http://ths123.com”/> 一个公司简介致谢页面 IP:122.224.106.17
< item domain=“http://touzime.com”/> 投资迷页面 IP:122.224.106.15
< item domain=“http://5ifund.com”/> 爱基金 IP:122.224.106.15
< item domain=“http://5ifund.com.cn”/> 爱基金 IP:122.224.106.15
< item domain=“http://aiwencai.com”/> 爱问财 IP:122.224.106.15
< item domain=“http://aiwencai.cn”/> 爱问财 IP:122.224.106.15
< item domain=“http://aiwencai.net”/> 爱问财 IP:122.224.106.15
< item domain=“http://iwencai.net”/> 爱问财 IP:122.224.106.15
< item domain=“http://hexin.com.cn”/> 暂不清楚, IP:122.224.106.17
< item domain=“http://aiwencai.com.cn”/>爱问财 IP:122.224.106.15
< item domain=“http://51ifind.com”/> 爱基金 IP:122.224.106.15
< item domain=“http://51ifind.com.cn”/> 爱基金 IP:122.224.106.15
< item domain=“http://ijijin.com.cn”/> 爱基金 IP:122.224.106.15
< item domain=“http://huntgold.cn”/> 猎金 IP:122.224.106.15
登录成功后,发送TCP报文;
先把相关的IP全部筛选出来,这里主要是一些 页面相关的
122.224.106.17 股票
122.224.106.14
122.224.106.15 基金 & 黄金 相关。
183.131.2.148
183.129.205.207
49.4.9.179
49.4.0.71
121.201.108.170
还有一些其他的IP,慢慢汇总,先看消息
第一条确定点的消息是:
HTTP GET 请求 IP为 49.4.9.179 GetRobotVal
GET /liuyan/message/getrobothorse
内容没有什么实际性内容。
接着是一条
POST /cat? 内容是 reqtype=cc_query_userinfo&userid=xxxxxxxx
直观看是获取 用户信息的
紧接着又是一条,
POST /cat? 内容是 reqtype=cc_query_optiparam&userid=344801512
收到的回复内容很丰富,但是现阶段看着貌似也没什么用处,先跳过
http 122.224.106.14
GET /verify?reqtype=cookie_domain_upass
看着也没啥用。
接着之后,给发了一段1369字节报文 Dst: 122.112.250.102 ,端口 8601,内容为
fdfdfdfd30303030 30353061 09010a00 * * * * 0000050a****
收到回复: …00000205 … 看不出来什么
Dst IP 121.201.108.170:8061 1264 内容
fdfdfdfd30303030 30346131 09001600 * * * * 000004a1****
49.4.0.71:8601 这条线没看出什么明显的数据
Send: …0000050a
Recv:…00000007
Send:…000000f4 内容带了一系列股票代码,应该是自选股
Recv:…0000002a
Send:…0000045e
Recv:…000000d7
Send: …000001e8
Recv: … 0000002a
Recv: … 0000002a 这个地方看着奇怪
Send: … 00000099
Recv: … 0000002a
Send:… 000001e2
Recv: … 0000002a
Recv: … 0000002a
Recv: … 0000002a
Send: … 0000045c
Recv:…00000c7f
…
一个针对 49.4.9.179 的
GET /get/344801512/version/E028.80.24.0000?t=20200425220734
至此为止,乱的一遭遭,未完待续…