Ŝargi Scrapy-prokseb-agordojn en CrawlerProcess-skripton
Transdonu get_project_settings() al CrawlerProcess kiam memstara lanĉilo devas uzi la saman elŝutan mezan programaron kiel scrapy crawl.
Araneo povas uzi la atendatan prokseon sub scrapy crawl kaj iri rekte kiam ĝin lanĉas Python-skripto. Kontrolu kiel tiu skripto konstruas siajn agordojn antaŭ ol ŝanĝi la proksean servilon.
Por ekzistanta Scrapy-projekto kaj ĝia registrita araneo:
from scrapy.crawler import CrawlerProcess
from scrapy.utils.project import get_project_settings
settings = get_project_settings()
process = CrawlerProcess(settings=settings)
process.crawl('catalog')
process.start()
Anstataŭigu catalog per la aranea nomo de la projekto. La projekto devas esti trovebla per sia scrapy.cfg, aŭ per ĝuste agordita SCRAPY_SETTINGS_MODULE indikanta importeblan agordan modulon.
Konstrui nur CrawlerProcess() ne importas la agordan dosieron de la projekto nur ĉar la skripto ankaŭ importas aranean klason. Pro tio propra meza programaro ŝaltita de DOWNLOADER_MIDDLEWARES povas manki en tiu rulo.
Ŝargi la agordojn liveras la agorditajn komponantojn; ĝi ne elpensas proksean adreson. La HTTP-proksea meza programaro de Scrapy ankoraŭ bezonas sian kutiman mediprokseon aŭ eksplicitan valoron request.meta['proxy']. Kontrolu ke HTTPPROXY_ENABLED ne malŝaltis ĝin. Por permesita retumi publikajn paĝojn, la listo de HTTP-prokseoj proponas kandidatojn por HTTP-proksea valoro liverata per tiuj metadatenoj aŭ la medio.
Komparu la ŝargitajn agordojn kaj aktivan mezan programaron de la lanĉilo kun la komandlinia rulo. Se ili kongruas, daŭrigu kun la prokseaj metadatenoj de la elektita peto kaj la reala transporta eraro.