/usr/bin/python# # Created by 老刘 on 2020/5/12# # Author: Lao Liu <
上篇文章提到四行代码获取股票历史数据,有人说不能用了,所以就写了本代码验证。
一、基本思路
这段代码是获取以6开头的股票数据,大家可以根据自己的需要来改写。
基本思路就是在网上(url='http://quote.eastmoney.com/stock_list.html')来获取所有的股票代码,存放在daima 列表中,循环列表依此取出数据,有些股票是没有数据的,做了异常处理。
二、完整代码
#!/usr/bin/python# # Created by 老刘 on 2020/5/12# # Author: Lao Liu <412842374@qq.com>#import requests,reimport tushare as ts#获取股票代码网址url='http://quote.eastmoney.com/stock_list.html'headers={ 'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.92 Safari/537.36', }#发出请求response=requests.get(url,headers = headers)#设置编码response.encoding='gb2312'html=response.text#利用正则取出股票名称和代码存放在lists列表中pat=' <li><a target="_blank".*?">(.*?)</a></li>'lists=re.findall(pat,html,re.S)#循环列表for list in lists: #把股票名称存放在name列表里 name = list #把代码存在daima列表里 daima = list[-8:].replace("(", '').replace(")", '') #如果以6开头,下载数据 if daima[0] == '6': try: print("正在下载%s的数据"%list) ata=ts.get_hist_data(daima) data.to_csv('./股票数据/%s.csv'%list,index=False) print("%s的数据下载完毕"%list) except: print("%s的数据下载失败!********************" % list)
下载到本地的文件。
打开后的数据
最近在学pandas,有兴趣的可以交流
本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 931614094@qq.com 举报,一经查实,本站将立刻删除。