大家好,前几天有个粉丝找我获取基金信息,这里拿出来分享一下,感兴趣的小伙伴们,也可以积极尝试。喜欢记得收藏、关注、点赞。
注:文末提供完整资料、代码
文章图片
数据获取 【python|真香啊,手把手教你使用 Python 获取基金信息】这里我们的目标网站是某基金官网,需要抓取的数据如下图所示。
文章图片
可以看到上图中基金代码那一列,有不同的数字,随机点击一个,可以进入到基金详情页,链接也非常有规律,以基金代码作为标志的。
其实这个网站倒是不难,数据什么的,都没有加密,网页上的信息,在源码中都可以直接看到。
文章图片
这样就降低了抓取难度了。通过浏览器抓包的方法,可以看到具体的请求参数,而且可以看到请求参数中只有pi
在变化,而这个值恰好对应的是页面,直接构造请求参数就可以了。
文章图片
代码实现过程 找到数据源之后,接下来就是代码实现了,一起来看看吧,这里给出部分关键代码。
获取股票id数据
response = requests.get(url, headers=headers, params=params, verify=False)
pattern = re.compile(r'.*?"(?P.*?)".*?', re.S)
result = re.finditer(pattern, response.text)
ids = []
for item in result:
# print(item.group('items'))
gp_id = item.group('items').split(',')[0]
结果如下图所示:
文章图片
之后构造详情页链接,获取详情页的基金信息,关键代码如下:
response = requests.get(url, headers=headers)
response.encoding = response.apparent_encoding
selectors = etree.HTML(response.text)
danweijingzhi1 = selectors.xpath('//dl[@class="dataItem02"]/dd[1]/span[1]/text()')[0]
danweijingzhi2 = selectors.xpath('//dl[@class="dataItem02"]/dd[1]/span[2]/text()')[0]
leijijingzhi = selectors.xpath('//dl[@class="dataItem03"]/dd[1]/span/text()')[0]
lst = selectors.xpath('//div[@class="infoOfFund"]/table//text()')
结果如下图所示:
文章图片
将具体的信息做相应的字符串处理,然后保存到
csv
文件中,结果如下图所示:文章图片
有了这个,你可以做进一步的统计和数据分析了。
总结 这篇文章主要分享了使用Python网络爬虫获取基金数据信息,这个项目不算太难,里边稍微有点小坑,欢迎大家积极尝试。
这篇文章主要是以【股票型】的分类做了抓取,其他的类型,我就没做了,欢迎大家尝试,其实逻辑都是一样的,改下参数就可以了。
联系方式 目前开通了技术交流群,群友已超过3000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友
- 方式1、添加微信号:dkl88191,备注:来自CSDN
- 方式2、微信搜索公众号:Python学习与数据挖掘,后台回复:加群
推荐阅读
- python|妙不可言,Python 可视化竟可以这么玩啊
- python|图文并茂,Python轻松生成PDF数据分析报告
- big|利用Python数据分析处理进行炒股实战行情
- python|考生都难哭了,用 Python 分析了一下,这里才是高考地狱级难度
- 520,用Python定制你的《本草纲目女孩》
- python|使用OpenCV在Python中进行图像操作
- yolov5学习|yolov5通过ncnn在安卓平台部署
- Python|Python编程题每日一练day1(附答案)
- Python概述环境准备Python起步数据类型概述