Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Scrapy Не удалось найти паука Ошибка

Автор вопроса: KristinОтветов: 1

Я пытался запустить простого паука с помощью 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. Нужно ли сохранять моего паука в каталоге скриптов?

  • У моего паука нет никаких правил, поэтому я не думаю, что это применимо. Хотя я мог ошибаться. Kristin 22.05.2010
  • Вы получаете ту же ошибку при использовании DmozSpider, определенного в руководстве? unutbu 22.05.2010
  • Я не пробовал с dmoz в качестве домена. все, что я действительно сделал, это изменил сайт, который он просматривает. Kristin 22.05.2010
  • Где вы разместили указанный выше код? Я подозреваю, что его нет в каталоге project / spiders, и он не импортируется. Если бы это было так, вы бы получили сообщение об ошибке, в котором говорится, что строка from __future__ import absolute_import должна предшествовать другой строке импорта. unutbu 22.05.2010

pythondnsscrapy

Ответы

Ответ 1 · рейтинг 2 · R. Max

попробуйте запустить python yourproject/spiders/domain.py, чтобы увидеть, нет ли синтаксических ошибок. Я не думаю, что вам следует включать абсолютный импорт, поскольку scrapy зависит от импорта родственников.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы