Python Scrapy - 没有为某些页面获取任何内容

时间:2017-07-26 20:30:25

标签: python http web-scraping scrapy scrapy-spider

我正试图从offerup.com和 scrapy shell 中获取一些信息,但没有任何结果。

我会输入:

scrapy shell https://offerup.com/

它会去那里,但如果我只是尝试获取整个网页的文字:

response.xpath('//text()').extract()

它回来了:

['Request unsuccessful. Incapsula incident ID: 623000250007296502-10946686267359632']

对于我试图获得的任何其他信息(例如标题),它没有任何回复 你知道为什么会这样吗?非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

请注意阅读visitng offerup时获得的回复。

  

[s]可用的Scrapy对象:

     

[s] scrapy scrapy模块(包含   scrapy.Request,scrapy.Selector等)

     

[s]履带式车辆    

     

[s] item {}

     

[s]请求https://offerup.com>

     

[s]响应< 403   https://offerup.com>

您收到403,禁止错误。什么都不能绕过403。

如果您尝试使用其他网站,例如http://buffalo.craigslist.org,则会给出200的OK响应。使用相同的命令将显示所需的页面,使用response.xpath('//text()').extract()将打印来自root的所有文本元素。

有些网站可能会设置防刮措施,以防止机器人占用资源。提供显然是这样一个网站。

要直接回答您的问题,您的代码功能正常,但目标网站阻止您使用它。