Hämähäkki voi käyttää odotettua välityspalvelinta scrapy crawl-komennon alla ja mennä suoraan, kun sen käynnistää Python-skripti. Tarkista, miten skripti rakentaa asetuksensa, ennen kuin vaihdat välityspalvelinta.

Olemassa olevalle Scrapy-projektille ja sen rekisteröidylle hämähäkille:

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

Korvaa catalog projektin hämähäkin nimellä. Projektin on löydyttävä scrapy.cfg-tiedostonsa kautta tai oikein asetetun, tuotavaan asetusmoduuliin osoittavan SCRAPY_SETTINGS_MODULE-muuttujan kautta.

Pelkkä CrawlerProcess()-olion luonti ei tuo projektin asetustiedostoa vain siksi, että skripti tuo myös hämähäkkiluokan. Siksi DOWNLOADER_MIDDLEWARES-asetuksella käytössä oleva mukautettu väliohjelmisto voi puuttua kyseisestä ajosta.

Asetusten lataaminen tarjoaa määritetyt komponentit; se ei keksi välityspalvelimen osoitetta. Scrapyn HTTP-välityspalvelimen väliohjelmisto tarvitsee edelleen tavallisen ympäristön välityspalvelimen tai eksplisiittisen request.meta['proxy']-arvon. Tarkista, ettei HTTPPROXY_ENABLED ole poistanut sitä käytöstä. Sallittuun julkisten sivujen ryömintään HTTP-välityspalvelinlista tarjoaa ehdokkaita HTTP-välityspalvelimen arvolle, joka välitetään näiden metatietojen tai ympäristön kautta.

Vertaa käynnistimen lataamia asetuksia ja aktiivista väliohjelmistoa komentoriviajoon. Jos ne täsmäävät, jatka valitun pyynnön välityspalvelinmetatiedoilla ja todellisella siirtovirheellä.

Aiheeseen liittyvät artikkelit