Scrapy - простой пример скребка не возвращает вывод - PullRequest
0 голосов
/ 06 июля 2018

Я выполняю scrapy на Anaconda и попытался запустить пример кода из этого руководства DigitalOcean , как показано ниже:

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

Я новичок в Scrapy, так что имейте это в виду. Этот код выполняется, но ничего не отображается. Предполагается вывод на основе статьи, из которой я получил код. Пожалуйста, дайте мне знать, как просмотреть информацию, которую собирает паук. Я запускаю модуль с моей IDLE, если я пытаюсь сделать «runspider» в cmd, он говорит, что не может найти мой файл python, хотя я могу увидеть каталог с файлами и открыть его на IDLE. Заранее спасибо.

1 Ответ

0 голосов
/ 06 июля 2018

Ваш паук отсутствует метод обратного вызова для обработки ответа от 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 вызывает метод parse, определенный в вашем пауке, для обработки ответов на запросы, которые генерирует ваш паук.

Взгляните также на официальный учебник Scrapy: https://doc.scrapy.org/en/latest/intro/tutorial.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...