Python Scrapy-de proksileri nädip sazlamaly we gezekleşdirmeli
Updated:
Scrapy-nyň asinhron Twisted dwigateli request.meta['proxy'] bahasyna bellenen http://user:pass@ip:port setirlerini seljerýän gurlan HttpProxyMiddleware (ileri tutulmagy 750) modulyny öz içine alýar. 740 ileri tutulma derejesinde 10 setirlik ýörite Downloader Middleware ýazmak, möýleriňize ölçegsiz VinaProxy statik IP toplumy boýunça awtomatiki gezekleşmäge mümkinçilik berýär.
request.meta['proxy'] = 'http://user:pass@ip:port'- 1 IP40 000 ₫
- 5+ IP35 000 ₫
- 10+ IP25 000 ₫
- 20+ IP25 000 ₫
- 50+ IP25 000 ₫
- 100+ IP25 000 ₫
- 200+ IP25 000 ₫
- 500+ IP25 000 ₫
- 1000+ IP22 000 ₫
- 2000+ IP20 000 ₫
- 1 IP40 000 ₫
- 5+ IP35 000 ₫
- 10+ IP25 000 ₫
- 20+ IP25 000 ₫
- 50+ IP25 000 ₫
- 100+ IP25 000 ₫
- 200+ IP25 000 ₫
- 500+ IP25 000 ₫
- 1000+ IP22 000 ₫
- 2000+ IP20 000 ₫
Scrapy proksi middleware tertibi we ugurdaşlyk sazlamalary
HttpProxyMiddleware proksi URL-inden user:pass maglumatyny aýyrmak we Proxy-Authorization sözbaşysyny kodlamak üçin 750 tertibinde işleýändigi sebäpli, request.meta['proxy'] bahasyny belleýän islendik ýörite middleware has pes belgide (meselem, 740) işlemelidir:
| Scrapy sazlamasy | Maslahat berilýän baha | Maksady |
|---|---|---|
request.meta['proxy'] | 'http://user:pass@ip:port' | Soragy bellenen VinaProxy proksisi arkaly ugrukdyrýar |
| Middleware ileri tutulmagy | 740 (750-den öň) | HttpProxyMiddleware modulynyň user:pass sözbaşysyny kodlamagyny üpjün edýär |
CONCURRENT_REQUESTS_PER_IP | 2-den 4-e çenli | HTTP 429 ýalňyşlygynyň öňüni almak üçin proksi IP başyna bir wagtda açylýan soketleri çäklendirýär |
AUTOTHROTTLE_ENABLED | True | Maksatly gijikmä baglylykda ýygnamak gijikmesini dinamiki uýgunlaşdyrýar |
Uly göwrümli Scrapy ýygnamalary üçin iň gowy tejribeler
- VinaProxy proksi sanawyňyzy
from_crawler()içinde ýükläň weprocess_request()içinderequest.meta['proxy'] = random.choice(self.proxies)belläň - IP başyna sorag aralyklary robot ýaly bolup görünmezligi üçin
DOWNLOAD_DELAY = 1.0bilen birlikdeRANDOMIZE_DOWNLOAD_DELAY = Trueişlediň - Gaýtadan synanyşylanda (
429ýa-da503), soragy nobata gaýtadan goşmazdan öň toplumyňyzdan başga proksi saýlaň
Ädimme-ädim
- 1
Proksi toplumyňyzy http://user:pass@ip:port hökmünde formatlaň
URL setirlerini almak üçin VinaProxy sanawyňyzy biziň Proxy Format Converter guralymyza goýuň.
- 2
middlewares.py içinde ProxyPoolMiddleware dörediň
request.meta['proxy'] = random.choice(self.proxies)bellemek üçinprocess_request(self, request, spider)funksiýasyny kesgitläň. - 3
settings.py içinde 740 ileri tutulma derejesinde bellige alyň
DOWNLOADER_MIDDLEWARESaşagyna'myproject.middlewares.ProxyPoolMiddleware': 740goşuň weCONCURRENT_REQUESTS_PER_IP = 2belläň. - 4
scrapy shell ýa-da scrapy crawl bilen barlaň
Gezekleşdirmegi we tassyklamany barlamak üçin
https://vinaproxy.com/api/my-ipsalgysyna synag soragyny iberiň.
Köp berilýän soraglar
Näme üçin ýörite Scrapy proksi middleware 800 ileri tutulma bellenende şowsuz boldy?
Scrapy-nyň gurlan HttpProxyMiddleware moduly 750 ileri tutulma derejesinde işleýär. Eger siziň middleware-iňiz 800-de (750-den soň) işlese, setirdäki user:pass şahsy maglumatlary hiç wagt Proxy-Authorization sözbaşysyna öwrülmeýär. Middleware ileri tutulmagyny hemişe 750-den pes belläň (meselem, 740).
Scrapy her bir proksi üçin hemişelik birikmeleri açyk saklaýarmy?
Hawa. Twisted birikme toplumy her bir proksi ahyrky nokady üçin hemişelik keep-alive birikmelerini saklaýar.
VinaProxy proksileri millionlarça sahypalyk Scrapy işleri üçin çäklendirilmedikmi?
Hawa. Ähli Dedicated IPv4 we Static ISP meýilnamalary çäksiz aýlyk traffigi öz içine alýar.
Ölçegsiz statik IP toplumlary bilen Scrapy möýleriňizi giňeldiň
7 ýurt boýunça Dessine köpçülikleýin Dedicated IPv4 we Static ISP proksileri.
Scrapy proksilerini satyn alyň