Pregunta

He estado tratando de conseguir una araña simple de ejecutar con scrapy, pero obtengo el error:

Could not find spider for domain:stackexchange.com

cuando corro el código con el scrapy-ctl.py crawl stackexchange.com expresión. La araña es el siguiente:

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()`

Otra persona ha escrito hace casi exactamente los mismos meses de problemas, pero no dijo cómo lo arreglaron, scrapy araña no está trabajando He estado siguiendo el turtorial exactamente en http://doc.scrapy.org/intro/tutorial. html , y no puede entender por qué no está funcionando.

Al ejecutar este código en Eclipse consigo el error

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

No puedo entender por qué no es encontrar el módulo de la araña de base. ¿Mi araña tienes que estar guardado en el directorio de secuencias de comandos?

¿Fue útil?

Solución

intente ejecutar python yourproject/spiders/domain.py para ver si hay algún error de sintaxis. No creo que usted debe permitir la importación absoluta como scrapy se basa en las importaciones familiares.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top