这没啥难度把,这是 jsonp数据,把callback去掉就好了呀
import requests
import re
import json
response = requests.get('http://push2his.eastmoney.com/api/qt/stock/fflow/daykline/get?lmt=0&klt=101&secid=1.000001&secid2=0.399001&fields1=f1,f2,f3,f7&fields2=f51,f52,f53,f54,f55,f56,f57,f58,f59,f60,f61,f62,f63,f64,f65&ut=b2884a393a59ad64002292a3e90d46a5&cb=jQuery183002331080747907488_1573624699670&_=1573624700109')
jsonp_data_str =re.findall('j.*?\((.*?)\)',response.text)[0]
json_data = json.loads(jsonp_data_str)
print(type(json_data))
print(json_data)
0 - 0?好像没啥区别啊,我想把后面按照日期每天取,该如何实现呢?
@Icarus随心: 这都还不会我的天不就是字典取值嘛,你可以把数据再重组一个日期字典
import requests
import re
import json
response = requests.get('http://push2his.eastmoney.com/api/qt/stock/fflow/daykline/get?lmt=0&klt=101&secid=1.000001&secid2=0.399001&fields1=f1,f2,f3,f7&fields2=f51,f52,f53,f54,f55,f56,f57,f58,f59,f60,f61,f62,f63,f64,f65&ut=b2884a393a59ad64002292a3e90d46a5&cb=jQuery183002331080747907488_1573624699670&_=1573624700109')
jsonp_data_str =re.findall('j.*?\((.*?)\)',response.text)[0]
json_data = json.loads(jsonp_data_str)
date_dic = {}
for a in json_data['data']['klines']: #type:str
date_lis=a.split(',')
date = date_lis.pop(0)
date_dic[date]=date_lis
print(date_dic)
@小小咸鱼YwY: 好的,谢谢你·····不过我想吐槽一下,你回答问题的口气真的让人好无奈······我是真的不会啊···
@Icarus随心: - -,我感觉到上面那一步就差不多了
@小小咸鱼YwY: 上面那步之前已经取到了(捂脸。····
@Icarus随心: 你取到的是jsonp格式要转换的把里面json提取出来,然后就是个字典了,还有有种分时间方法你接口参数吧,不过我不知道你原网站是啥
@Icarus随心: 你把你爬的网站url给我瞧瞧
@小小咸鱼YwY: http://data.eastmoney.com/zjlx/dpzjlx.html 东方财富的资金流向,我需要学习的太多了···菜的很真实
@Icarus随心: 这个抓包呢还是用Fiddler你很明显就可以看到请求参数,是啥,往同类换几个点点点你就知道了他里面参数控制接口说明
你可以看我博客里面的爬虫一些相关的这个网站没啥反爬就是端口比较乱- -
我刚刚看了一他好像没做具体时间的端口数据接口,你只能自己爬下来自己筛选
@小小咸鱼YwY: 好的,我晚上回去看看,非常感谢 0_0b
@Icarus随心: 刚刚可能态度是不大好,主要是感觉有点简单.....不好意思哈
@小小咸鱼YwY: 没事没事,我明白我的水平(捂脸