Ṣe àkọsílẹ̀ àwọn ìṣètò proxy Scrapy sínú script CrawlerProcess
Fi get_project_settings() ránṣẹ́ sí CrawlerProcess nígbà tí olùgbéjáde olómìnira gbọdọ̀ lo middleware ìgbàsílẹ̀ kan náà bí scrapy crawl.
Aláǹtakùn lè lo proxy tí a retí lábẹ́ scrapy crawl kí ó sì lọ tààrà nígbà tí script Python bá gbé e jáde. Ṣàyẹ̀wò bí script yẹn ṣe ń kọ́ àwọn ìṣètò rẹ̀ kí o tó yí server proxy padà.
Fun iṣẹ́ Scrapy tí ó wà tẹ́lẹ̀ àti aláǹtakùn rẹ̀ tí a forúkọ sílẹ̀:
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()
Rọ́pò catalog pẹ̀lú orúkọ aláǹtakùn iṣẹ́ náà. Iṣẹ́ náà gbọdọ̀ wà ní wíwá nípasẹ̀ scrapy.cfg rẹ̀, tàbí nípasẹ̀ SCRAPY_SETTINGS_MODULE tí a ṣètò dáadáa tí ó ń tọ́ka sí module ìṣètò tí ó ṣeé gbé wọlé.
Kíkọ́ CrawlerProcess() nìkan kò gbé fáìlì ìṣètò iṣẹ́ náà wọlé kìkì nítorí pé script náà tún gbé kíláàsì aláǹtakùn wọlé. Nítorí náà middleware àkànṣe tí DOWNLOADER_MIDDLEWARES mú ṣiṣẹ́ lè má wà nínú ìgbékalẹ̀ yẹn.
Gbígbé àwọn ìṣètò wọlé ń pèsè àwọn èròjà tí a ti ṣètò; kò dá àdírẹ́sì proxy. Middleware proxy HTTP ti Scrapy ṣì nílò proxy àyíká rẹ̀ déédéé tàbí iye request.meta['proxy'] tí ó ṣe kedere. Ṣàyẹ̀wò pé HTTPPROXY_ENABLED kò ti dínà rẹ̀. Fún ìwádìí ojú-ìwé gbangba tí a gbà láàyè, àkójọ proxy HTTP ń pèsè àwọn olùdíje fún iye proxy HTTP tí a ń fi metadata tàbí àyíká yẹn fúnni.
Fi àwọn ìṣètò tí a gbé wọlé àti middleware tí ń ṣiṣẹ́ ti olùgbéjáde wé pẹ̀lú ìgbékalẹ̀ láti ìlà àṣẹ. Bí wọ́n bá bára mu, tẹ̀síwájú pẹ̀lú metadata proxy ti ìbéèrè tí a yàn àti àṣìṣe gbígbé gidi.