Pregunta

Soy nuevo en Python y rasposo y por lo tanto estoy recibiendo algunas dudas básicas (por favor, perdóname la ignorancia sobre algunos aspectos fundamentales, que yo m dispuestos a aprender: D).

En este momento estoy escribiendo algunas arañas y su implementación usando scrapy-ctl.py desde la línea de comandos escribiendo:

C:\Python26\dmoz>python scrapy-ctl.py crawl spider

Pero no quiero dos códigos separados pitón y una línea de comandos para implementar this.I quiere definir de alguna manera una araña y hacer que rastree URL escribiendo y ejecutando un solo pitón code.I pudo notar que en el archivo de scrapy- ctl.py, 'ejecutar' de tipo función se importa, pero yo soy ni idea de cómo esta función se puede definir en el código que contiene spider.Could alguien me explique cómo hacer esto, si es posible, ya que reduce en gran medida el trabajo.

Gracias de antemano !!

¿Fue útil?

Solución

  

Pero no quiero dos códigos separados pitón y una línea de comandos para implementar esto. Quiero definir de alguna manera una araña y hacer que rastree URL escribiendo y ejecutando un solo código Python.

No estoy seguro de que el esfuerzo vale la pena salir, si lo que desea para raspar algo. Usted tiene por lo menos dos opciones:

  • ¡Adéntrate en scrapy/cmdline.py. Verá que esto es una especie de secuencia de comandos de despacho, finalmente, la entrega de la obra al método run para el comando especificado, aquí crawl (en scrapy/commands/crawl.py). Vistazo a la línea 54, creo scrapymanager.start() comenzará su comando real, después de una cierta configuración.

  • Un método poco hacky: uso pitones subprocess módulo de tener uno su proyecto y la ejecución en un archivo (o proyecto).

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