专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

但解析失踪为空_python

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/9 2:22:42       共计:3560 浏览

但解析失踪为空?

数据应该是动态加载的,放在一个json里面,需要抓包分析,BS4和xpath直接获取的是网页源码,解析不到数据,所以直接返回的是空值,下面我简单介绍一下如何获取动态网页的数据,感兴趣的朋友可以尝试一下,以人人贷上的数据为例:

首先,分析数据

打开我们需要爬取的网页,这里假设我们要爬取的数据如下,涉及5个字段,都是一些比较规范的列表,提取起来也比较容易:

打开网页源码(不要右键检查),按住ctrl+F键任意搜索一个数据,可以看得出来,任何数据都查找不到,这时数据就很有可能是动态加载的,放在一个json里面,需要抓包分析进行确定:

接着,抓包分析

还是刚才的网页,按F12调出开发者工具,依次点击“Network”->“XHR”,F5刷新页面,仔细观察抓取到的文件,一个一个比照需要爬取的数据进行分析,最后可以看到加载的json如下,也就是我们需要获取的数据,这里一般都是按照一定规律进行循环,一页一页往下加载,格式是json的,主要是为了方便解析和提取,记着这里的url,后面直接用requests请求即可:

最后,编写程序

前面的json url已经确定,这里直接请求、解析数据即可,如下,代码非常简单,基本思想先requests获取数据,然后再json解析,一个一个字段的提取出来:

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

至此,我们就完成了获取动态网页数据,最重要的还是进行抓包分析,静态网页数据一般都是固定不变的,直接在网页源码中可以看到,但是动态网页就不行了,只有在请求页面的时候才进行加载,而且它是实时更新和变化的,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:python只看书可以吗_python | ·下一条:cf王者轮回怎么不能抽_服务器

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有