Scrapy-基本的刮板示例不返回任何输出

时间:2018-07-05 22:43:50

标签: python scrapy

我在Anaconda上抓狂,并且尝试从this DigitalOcean guide运行示例代码,如下所示:

import scrapy
from scrapy import Spider
class BrickSetSpider(scrapy.Spider):
      name = "brickset_spider"
      start_urls = ['http://brickset.com/sets/year-2016']

我是Scrapy的初学者,请记住这一点。此代码将执行,但未显示任何输出。应该根据我从中获得代码的文章进行输出。请让我知道如何查看蜘蛛收集的信息。我正在从IDLE上运行该模块,如果我尝试在cmd中执行“ runspider”,则它表示即使我可以看到文件目录并在IDLE上打开它,也找不到我的python文件。

1 个答案:

答案 0 :(得分:1)

您的蜘蛛缺少处理http://brickset.com/sets/year-2016的响应的回调方法。

尝试定义这样的回调方法:

import scrapy
from scrapy import Spider


class BrickSetSpider(scrapy.Spider):
    name = "brickset_spider"
    start_urls = ['http://brickset.com/sets/year-2016']

    def parse(self, response):
        self.log('I visited: {}'.format(response.url))

默认情况下,Scrapy调用您的Spider中定义的parse方法来处理您的Spider生成的请求的响应。

也请参阅Scrapy官方教程:https://doc.scrapy.org/en/latest/intro/tutorial.html