как интегрировать пауков и scrapy-ctl.py - PullRequest
0 голосов
/ 28 июня 2010

Я новичок в python и scrapy и, следовательно, у меня возникают некоторые базовые сомнения (пожалуйста, избавьте меня от незнания некоторых основ, которые я готов выучить: D).они используют scrapy-ctl.py из командной строки, набрав:

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

Но я не хочу два отдельных кода Python и командную строку для реализации этого. Я хочу как-то определить паука и сделать егосканировать URL, написав и запустив один код на Python. Я мог заметить, что в файле scrapy-ctl.py импортируется 'execute' типа function , но я не знаю, как эта функцияопределено в коде, содержащем spider. Может кто-нибудь объяснить мне, как это сделать, если это возможно, потому что это значительно сокращает работу.

Заранее спасибо !!

1 Ответ

1 голос
/ 28 июня 2010

Но мне не нужны два отдельных кода Python и командная строка для реализации этого. Я хочу как-то определить паука и заставить его сканировать URL, написав и запустив один код на Python.

Я не уверен, что усилия окупятся, если вы просто хотите что-то поцарапать. У вас есть как минимум два варианта:

  • Копать в scrapy/cmdline.py. Вы увидите, что это своего рода сценарий диспетчеризации, в конце концов передающий работу методу run для указанной команды, здесь crawlscrapy/commands/crawl.py). Посмотрите на строку 54, я думаю, scrapymanager.start() начнет вашу настоящую команду после некоторой настройки.

  • Небольшой хакерский метод: используйте модуль pythons subprocess, чтобы иметь один проект и исполнение в одном файле (или проекте).

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