【发布时间】:2019-02-04 22:12:50
【问题描述】:
我正在尝试从亚马逊产品页面中提取一些数据。
我正在寻找的是从产品中获取图像。例如:
通过使用 XPath
//script[contains(., "ImageBlockATF")]/text()
我得到了包含 url 的源代码部分,但 chrome XPath 帮助器中弹出了 2 个选项。
通过使用 XPath 进行尝试,我最终使用了这个:
//*[contains(@type, "text/javascript") and contains(.,"ImageBlockATF") and not(contains(.,"jQuery"))]
它专门为我提供了我需要的数据。
我遇到的问题是,对于某些产品(它可能发生在 2 双不同的鞋子内),有时我可以提取数据,而其他时候什么都没有。我通过这样做来提取:
imagenesString = response.xpath('//*[contains(@type, "text/javascript") and contains(.,"ImageBlockATF") and not(contains(.,"jQuery"))]').extract()
如果我使用 chrome xpath 帮助程序,数据总是与上面的 xpath 一起出现,但在程序本身中有时会出现,有时不会出现。我知道有时控制台读取的脚本与网站上显示的脚本不同,但我正在努力解决这个问题,因为有时它可以工作,有时它不能。对可能发生的事情有任何想法吗?
【问题讨论】:
标签: python-3.x xpath scrapy