爬取的数据有1.67MB,共有10000个股票信息
需要找到自己cookie
import requests
import csv
import re
with open('天天基金.csv',mode='w',encoding='gbk') as f:
csv_writer = csv.writer(f)
#随机应变,表头有一点问题,自己对着网站抄
csv_writer.writerow(['基金代码', '基金简称', '缩写', 'NUll', '单位净值', '累计净值','日增长率','近一周增长率','近一月增长率','近三月增长率','近6月增长率','近一年增长率','近二年','近三年','今年来','成立来','手续费'])
headers={
'Cookie':'',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36',
'Referer': 'http://fund.eastmoney.com/data/fundranking.html'
}
for i in range(1,235):
url=f'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft=all&rs=&gs=0&sc=1nzf&st=desc&sd=2021-08-22&ed=2022-08-22&qdii=&tabSubtype=,,,,,&pi={i}&pn=50&dx=1&v=0.21684709669373903'
response=requests.get(url=url,headers=headers)
text=response.text
#解析数据
# print(text)
datas=re.findall('datas:\[(.*?)\]',text)[0]
datas=eval(datas)
#字符串转为数组或者元组
print(datas)
for data in datas:
print(data)
with open('天天基金.csv',mode='a',encoding='gbk',newline='\n',)as f:
f.write(data)
f.write('\n')
用自己的COOkie我那里是空的