python爬取网页数据的时候,想要的数据不在HTML里,该怎么做

更新时间:02-10 教程 由 离沫 分享

抓包分析呗,一般不在HTML中的数据,都是网页动态加载的,只在页面刷新或者重新请求时,才加载数据,一般情况下,这些数据都保存在一个json文件或者xml文件中,下面我简单列举2个爬取网页动态加载数据的例子,感兴趣的话,可以参考一下,实验环境win10+python3.6+pycharm5.0,主要内容如下:

json数据:这里以爬取人人贷的散标数据为例

1.打开这个页面,假设这里要爬取的数据如下,包括年利率、借款标题、期限、金额和进度这5个字段信息:

2.按F12,调出开发者工具,依次点击“网络”->“XHR”,然后按F5刷新页面,就能看到页面的抓包数据,如下,点击进去,就能看到页面加载的Json数据:

3.最后,我们就可以根据json数据的格式编写代码来解析提取我们需要的数据了,如下,代码很简单,主要用到json这个包:

程序运行截图如下,就是我们需要爬取的数据:

xml数据:这里以爬取哔哩哔哩的弹幕数据为例

1.这里假设我们要爬取的是《天气预报员》的弹幕数据,如下,看着很多,也很乱:

2.第二步,与上面类似,按F12调出开发者工具,F5刷新页面,就可以看到抓包的数据,点击list.so这个文件(xml文件),就是我们需要爬取的数据,如下:

我们用浏览器打开这个xml文件,内容如下,很明显就是我们需要爬取的数据:

3.最后,就是编写代码来解析xml数据了,这个很简单,主要用到xml这个包,代码截图如下:

程序运行截图如下,已经爬取到我们所需要的数据:

至此,我们就完成了利用python来爬取网页动态加载的数据。总的来说,这2个示例都不难,最主要的还是抓包分析,找到网页动态加载的文件信息,然后根据url请求这个页面,再利用对应的包(json,xml包等)进行解析数据就行,只要你有一定的python爬虫基础,会使用浏览器基本的开发者工具,很快就能掌握爬取动态数据的,当然,网页要是很复杂,有验证码,js加密等,这个就需要自己认真分析了,或者使用其他工具,selenium等,网上也有相关教程可供参考,感兴趣的可以搜一下,希望以上分享的内容能对你有所帮助吧。

声明:关于《python爬取网页数据的时候,想要的数据不在HTML里,该怎么做》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2107211.html