Xpath是正确的,但是Scrapy Spider无法正常工作

时间:2019-03-03 16:49:51

标签: xpath scrapy

我正在尝试从网页上下载,我确定了XPath表达式,然后运行了Spider,但是没有下载任何内容。 网页:https://octopart.com/electronic-parts/integrated-circuits-ics 这是代码:

for product in response.xpath("//div[@class='serp-card-header media']/div[@class='media-body']"):
        yield {'name': product.xpath("//a/span[@class='part-card-manufacturer']/text()").extract_first()}

1 个答案:

答案 0 :(得分:0)

该网站似乎正在使用一些简单的漫游器检测。您最有可能使用默认的scrapy用户代理。因此,您需要在settings.py中设置一个真实的用户代理:

USER_AGENT = '[replace with a real user agent]'

请参阅documentation

完成此操作后,您将获得一些结果。但是,您的XPath也不正确。在for循环中,当您执行相对的XPath时,它需要以.//a/span...开始。请参阅此处以了解原因:https://docs.scrapy.org/en/latest/topics/selectors.html#working-with-relative-xpaths