Scrapy不返回结果

Scrapy不返回结果,scrapy,Scrapy,我正在学习scrapy,并试图浏览这个网站- 但是,我的剪贴代码找不到此网站上列出的产品链接。谁能告诉我为什么?Im使用的xpath是//a[@class=product card链接]/@href 这是因为js吗?如果是这样,我尝试使用scrapy splash,但仍然找不到列出的产品链接。有人能帮忙吗 谢谢大家! 这些项是通过AJAX请求生成的。当您连接到一个页面时,会执行一个javascript脚本,该脚本发出一些额外的http请求来检索一些json数据。然而,scrapy不执行任何jav

我正在学习scrapy,并试图浏览这个网站-

但是,我的剪贴代码找不到此网站上列出的产品链接。谁能告诉我为什么?Im使用的xpath是//a[@class=product card链接]/@href

这是因为js吗?如果是这样,我尝试使用scrapy splash,但仍然找不到列出的产品链接。有人能帮忙吗


谢谢大家!

这些项是通过AJAX请求生成的。当您连接到一个页面时,会执行一个javascript脚本,该脚本发出一些额外的http请求来检索一些json数据。然而,scrapy不执行任何javascript,所以您需要手动查找并调用这些AJAX请求

参见相关问题:,了解如何检查网络流量并解决此类情况

在这种特殊情况下,您可以看到发出的第一个xhr请求返回一个包含所有项数据的巨大json文件:

正如您所看到的,url采用了一些参数,最重要的是它采用了代表类别id的cid,其他参数主要用于计算运费,因此,如果您不关心这些参数,这同样适用:


另一种避免深入挖掘AJAX请求的方法是在处理AJAX之后使用Splash来刮取页面

可以更容易地实现,xpath表达式应该可以很好地与Splash配合使用。但是刮板会比较慢,因为它必须渲染每个页面