Scrapy中xpath与css的匹配不到内容的问题分析

在使用Scrapy爬取数据时,遇到通过谷歌或火狐复制的xpath和css无法获取内容的问题。问题可能源于浏览器对HTML的规范化处理和动态加载的数据。通过分析,发现Scrapy看到的页面结构可能与浏览器不同。解决方案包括利用scrapy shell测试xpath和css,通过`view(response)`查看爬虫看到的页面,以定位动态加载的数据。这样能更高效地调试和修改代码。
摘要由CSDN通过智能技术生成

前言:

最近用scrapy爬取某些数据的时候,发现用谷歌或火狐复制的xpath和css返回的数据总是空列表,确实令人费解。


 

问题探索:

其实解决办法很简单,一般有两个问题出现

1.可能是因为有一些标签是浏览器对html文本进行一定的规范化而强行加上去的,这时xpath则无法解析出来,此时去掉xpath中的一些元素即可。例如xpath解析table,遇到tbody标签时要看网页源代码,如果源代码有tbody标签,就要加上tbody标签才能解析

1.Scrapy爬虫看到的页面结构与我们自己在浏览器看到的可能并不一样



原因分析:

我们来分析一下,为什么Scrapy爬虫看到的页面结构与我们自己在浏览器看到的可能并不一样,原因可能是因为有页面的一些数据是动态加载的,你不能直接用xpath来提取出来。那么我们能不能用一些方法来看到scrapy爬虫所看到的页面呢?当然答案是肯定的。下面提到的工具scrapy shell 功能强大,可以帮我们解析&

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值