אַ שפּין קען ניצן דעם ערוואַרטעטן פּראָקסי אונטער scrapy crawl און גייט גלייך ווען ער ווערט געסטאַרטעט דורך אַ Python סקריפּט. פּרוּוו ווי אַזוי דער סקריפּט בויט זיינע באַשטעלונגען פֿאַר איר ענדערט דעם פּראָקסי סערווער.

פֿאַר אַן עקסיסטירנדיקן Scrapy פּראָיעקט און זײַן רעגיסטרירטער שפּין:

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

פֿאַרבייַט catalog מיט דעם נאָמען פֿון דער פּראָיעקט שפּין. דער פּראָיעקט מוז זיין געפֿונען דורך זיין scrapy.cfg, אָדער דורך אַ ריכטיק באַשטעטן SCRAPY_SETTINGS_MODULE וואָס ווייזט אויף אַן אימפּאָרטירלעכן באַשטעלונג מאָדול.

בלויז בויען CrawlerProcess() אימפּאָרטירט נישט די פּראָיעקט באַשטעלונג טעקע נאָר ווייַל דער סקריפּט אימפּאָרטירט אויך אַ שפּין קלאַס. דערפֿאַר קען אַ באַנוצער מיטלוואַרג וואָס ווערט אַקטיווירט דורך DOWNLOADER_MIDDLEWARES פֿעלן אין יענעם לויף.

לאָדן די באַשטעלונגען צושטעלט די קאָנפיגורירטע קאָמפּאָנענטן; עס דערפֿינדט נישט קיין פּראָקסי אַדרעס. Scrapy ס HTTP פּראָקסי מיטלוואַרג דאַרף נאָך זיין געוויינטלעכן סוויווע פּראָקסי אָדער אַן עקספּליציט request.meta['proxy'] ווערט. פּרוּוו אַז HTTPPROXY_ENABLED האָט עס נישט אָפּגעשאַלט. פֿאַר אַ דערלויבטער דורכגאַנג פֿון עפנטלעכע בלעטער שטעלט די HTTP פּראָקסי ליסטע קאַנדידאַטן פֿאַר אַ HTTP פּראָקסי ווערט וואָס ווערט געגעבן דורך יענע מעטאַדאַטן אָדער סוויווע.

פֿאַרגלײַך די געלאָדענע באַשטעלונגען און אַקטיוו מיטלוואַרג פֿון דעם סטאַרטער מיט דעם לויף פֿון דער באַפֿעלן ליניע. אויב זיי שטימען, פֿאָרן ווייַטער מיט די פּראָקסי מעטאַדאַטן פֿון דער אויסגעקליבענער בקשה און דעם טאַקע טראַנספּאָרט פֿעלער.

פֿאַרבונדענע אַרטיקלען