前言:
最近用scrapy爬取某些数据的时候,发现用谷歌或火狐复制的xpath和css返回的数据总是空列表,确实令人费解。
问题探索:
其实解决办法很简单,一般有两个问题出现:
1.可能是因为有一些标签是浏览器对html文本进行一定的规范化而强行加上去的,这时xpath则无法解析出来,此时去掉xpath中的一些元素即可。例如xpath解析table,遇到tbody
标签时要看网页源代码,如果源代码有tbody
标签,就要加上tbody
标签才能解析
1.Scrapy爬虫看到的页面结构与我们自己在浏览器看到的可能并不一样
原因分析:
我们来分析一下,为什么Scrapy爬虫看到的页面结构与我们自己在浏览器看到的可能并不一样,原因可能是因为有页面的一些数据是动态加载的,你不能直接用xpath来提取出来。那么我们能不能用一些方法来看到scrapy爬虫所看到的页面呢?当然答案是肯定的。下面提到的工具scrapy shell 功能强大,可以帮我们解析&