网页抓取解密(使用Python网络爬虫获取基金数据信息信息的篇文章分享)

优采云 发布时间: 2022-04-15 22:16

  网页抓取解密(使用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初学者。本篇文章主要分享使用Python网络爬虫获取资金数据信息。这个项目难度不大,但是有一点坑。欢迎您积极尝试。如果您遇到任何问题,请加我的朋友,我会帮助解决。

  这个文章主要是根据【股票类型】的分类。我没有做过其他类型。欢迎您尝试一下。其实逻辑是一样的,只要改变参数即可。

  

  最后,需要本文代码的朋友,可以加我获取!另外,为了方便大家学习Python,我还成立了一个优质的Python学习交流群。你可以问任何关于 Python 的问题。需要进来的朋友加我v,我拉你!

  小伙伴们快来练习吧!如果你在学习过程中遇到任何Python问题,请加我为好友,我会拉你进入Python学习交流群一起讨论学习。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线