Вопрос

Я пытался заставить простого паука работать с Scrapy, но постоянно получаю ошибку:

Could not find spider for domain:stackexchange.com

когда я запускаю код с выражением scrapy-ctl.py crawl stackexchange.com.Паук выглядит следующим образом:

from scrapy.spider import BaseSpider
from __future__ import absolute_import


class StackExchangeSpider(BaseSpider):
    domain_name = "stackexchange.com"
    start_urls = [
        "http://www.stackexchange.com/",
    ]

    def parse(self, response):
        filename = response.url.split("/")[-2]
        open(filename, 'wb').write(response.body)

SPIDER = StackExchangeSpider()`

Другой человек сообщил о почти такой же проблеме несколько месяцев назад, но не сказал, как они ее исправили. Scrapy Spider не работает Я следую инструкциям точно по адресу http://doc.scrapy.org/intro/tutorial.html, и не могу понять, почему он не работает.

Когда я запускаю этот код в eclipse, я получаю ошибку

Traceback (most recent call last): File "D:\Python Documents\dmoz\stackexchange\stackexchange\spiders\stackexchange_spider.py", line 1, in <module> from scrapy.spider import BaseSpider ImportError: No module named scrapy.spider

Я не могу понять, почему он не находит базовый модуль Spider.Должен ли мой паук быть сохранен в каталоге сценариев?

Это было полезно?

Решение

попробуй бежать python yourproject/spiders/domain.py чтобы увидеть, есть ли какие-либо синтаксические ошибки.Я не думаю, что вам следует включать абсолютный импорт, поскольку Scrapy полагается на импорт родственников.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top