Python 官方文档:入门教程 => 点击学习
目录一、分析网站二、开始代码三、运行代码,得到数据案例实现流程 思路分析: 需要什么数据?需要的数据在哪里? 代码实现: 发送请求获取数据解析数据多页爬取保存数据 知识点: requ
案例实现流程
思路分析:
代码实现:
知识点:
开发环境:
本次目标:
第一步:打开开发者工具,按F12,或者右键点击检查
第二步:刷新网站,点击搜索工具,在搜索框内输入基金代码,点击搜索
第三步:找到数据所在的真实url
导入模块:
import requests
import re
import csv
发送请求:
url = f'Http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft=all&rs=&gs=0&sc=6yzf&st=desc&sd=2020-12-16&ed=2021-12-16&qdii=&tabSubtype=,,,,,&pi=1&pn=50&dx=1'
headers = {
'Cookie': 'HAList=a-sz-300059-%u4E1C%u65B9%u8D22%u5BCC; em_hq_fls=js; qgqp_b_id=7b7cfe791fce1724e930884be192c85e; _adsame_fullscreen_16928=1; st_si=59966688853664; st_asi=delete; st_pvi=79368259778985; st_sp=2021-12-07%2014%3A33%3A35; st_inirUrl=https%3A%2F%2Fwww.baidu.com%2flink; st_sn=3; st_psi=20211216201351423-112200312936-0028256540; asp.net_SessionId=miyivgzxegpjaya5waosifrb',
'Host': 'fund.eastmoney.com',
'Referer': 'http://fund.eastmoney.com/data/fundranking.html',
'User-Agent': 'Mozilla/5.0 (windows NT 10.0; Win64; x64) AppleWEBKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36',
}
response = requests.get(url=url, headers=headers)
获取数据:
data = response.text
解析数据 筛选数据:
data_str = re.findall('\[(.*?)\]', data)[0]
转变数据类型:
tuple_data = eval(data_str)
for td in tuple_data:
# 把td 变成列表
td_list = td.split(',')
翻页:
分析不同页数url变化规律
for page in range(1, 193):
print(f'-------------------------正在爬取第{page}页内容-----------------------')
url = f'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft=all&rs=&gs=0&sc=6yzf&st=desc&sd=2020-12-16&ed=2021-12-16&qdii=&tabSubtype=,,,,,&pi={page}&pn=50&dx=1'
保存数据:
with open('基金.csv', mode='a', encoding='utf-8', newline='') as f:
csv_write = csv.writer(f)
csv_write.writerow(td_list)
print(td)
到此这篇关于Python采集天天基金数据掌握最新基金动向的文章就介绍到这了,更多相关Python采集天天基金数据内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: Python采集天天基金数据掌握最新基金动向
本文链接: https://www.lsjlt.com/news/161458.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0