Llwytho gosodiadau procsi Scrapy i sgript CrawlerProcess
Trosglwyddwch get_project_settings() i CrawlerProcess pan ddylai lansiwr annibynnol ddefnyddio'r un middleware lawrlwytho â scrapy crawl.
Gall pry cop ddefnyddio'r procsi disgwyliedig o dan scrapy crawl a mynd yn syth pan gaiff ei lansio gan sgript Python. Gwiriwch sut mae'r sgript honno'n adeiladu ei gosodiadau cyn newid y gweinydd procsi.
Ar gyfer prosiect Scrapy sy'n bodoli a'i bry cop cofrestredig:
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()
Amnewidiwch catalog ag enw pry cop y prosiect. Rhaid i'r prosiect fod yn ddarganfyddadwy trwy ei scrapy.cfg, neu drwy SCRAPY_SETTINGS_MODULE a osodwyd yn gywir yn pwyntio at fodiwl gosodiadau y gellir ei fewnforio.
Nid yw adeiladu CrawlerProcess() yn unig yn mewngludo ffeil gosodiadau'r prosiect dim ond oherwydd bod y sgript hefyd yn mewngludo dosbarth pry cop. O ganlyniad gall middleware addas a alluogwyd gan DOWNLOADER_MIDDLEWARES fod yn absennol o'r rhediad hwnnw.
Mae llwytho'r gosodiadau'n cyflenwi'r cydrannau cyfluniedig; nid yw'n dyfeisio cyfeiriad procsi. Mae middleware procsi HTTP Scrapy yn dal i fod angen ei brocsi amgylchedd arferol neu werth request.meta['proxy'] penodol. Gwiriwch nad yw HTTPPROXY_ENABLED wedi ei analluogi. Ar gyfer cropian tudalen gyhoeddus a ganiateir, mae'r rhestr procsi HTTP yn cynnig ymgeiswyr ar gyfer gwerth procsi HTTP a gyflenwir trwy'r metadata neu'r amgylchedd hwnnw.
Cymharwch osodiadau llwytho'r lansiwr a'r middleware gweithredol â'r rhediad llinell orchymyn. Os ydynt yn cyfateb, parhewch gyda metadata procsi'r cais a ddewiswyd a'r gwall cludo gwirioneddol.