VVinaProxy

Jak nastavit a rotovat proxy v Python Scrapy

Updated:

Asynchronní jádro Twisted frameworku Scrapy obsahuje vestavěný HttpProxyMiddleware (s prioritou 750), který zpracovává řetězce http://user:pass@ip:port přiřazené do request.meta['proxy']. Vytvoření vlastního 10řádkového Downloader Middleware s prioritou 740 umožní vašim spiderům automaticky rotovat v rámci poolu neomezených statických IP adres VinaProxy.

Scrapy · HTTP Proxy Format
request.meta['proxy'] = 'http://user:pass@ip:port'
Privátní IPv4 (datacentrové)
🇺🇸 Spojené státy
Skladem
Od
20 000 VND / IP / měsíc
≈ 0,74 US$ · platba ve VND
Množstevní slevy
  • 1 IP40 000 VND
  • 5+ IP35 000 VND
  • 10+ IP25 000 VND
  • 20+ IP25 000 VND
  • 50+ IP25 000 VND
  • 100+ IP25 000 VND
  • 200+ IP25 000 VND
  • 500+ IP25 000 VND
  • 1000+ IP22 000 VND
  • 2000+ IP20 000 VND
Koupit Spojené státy
Privátní IPv4 (datacentrové)
🇬🇧 Spojené království
Skladem
Od
20 000 VND / IP / měsíc
≈ 0,74 US$ · platba ve VND
Množstevní slevy
  • 1 IP40 000 VND
  • 5+ IP35 000 VND
  • 10+ IP25 000 VND
  • 20+ IP25 000 VND
  • 50+ IP25 000 VND
  • 100+ IP25 000 VND
  • 200+ IP25 000 VND
  • 500+ IP25 000 VND
  • 1000+ IP22 000 VND
  • 2000+ IP20 000 VND
Koupit Spojené království

Pořadí proxy middleware a nastavení souběhu ve Scrapy

Protože HttpProxyMiddleware běží s prioritou 750, aby odstranil user:pass z URL proxy a zakódoval hlavičku Proxy-Authorization, jakýkoli vlastní middleware nastavující request.meta['proxy'] musí běžet s nižším číslem (např. 740):

Nastavení ScrapyDoporučená hodnotaÚčel
request.meta['proxy']'http://user:pass@ip:port'Směruje požadavek přes zadanou VinaProxy proxy
Priorita middleware740 (před 750)Zajišťuje, že HttpProxyMiddleware zakóduje hlavičku user:pass
CONCURRENT_REQUESTS_PER_IP2 až 4Omezuje počet současných socketů na IP adresu proxy, aby se předešlo chybě HTTP 429
AUTOTHROTTLE_ENABLEDTrueDynamicky přizpůsobuje zpoždění crawlera na základě latence cíle

Osvědčené postupy pro rozsáhlý crawling ve Scrapy

  • Načtěte seznam proxy od VinaProxy v metodě from_crawler() a přiřaďte request.meta['proxy'] = random.choice(self.proxies) uvnitř process_request()
  • Povolte RANDOMIZE_DOWNLOAD_DELAY = True společně s DOWNLOAD_DELAY = 1.0, aby intervaly požadavků pro každou IP adresu nepůsobily roboticky
  • Při opakovaném pokusu (429 nebo 503) vyberte před opětovným zařazením požadavku do fronty jinou proxy ze svého poolu

Krok za krokem

  1. 1

    Naformátujte svůj pool proxy jako http://user:pass@ip:port

    Vložte svůj seznam od VinaProxy do našeho nástroje Proxy Format Converter a získejte řetězce URL.

  2. 2

    Vytvořte ProxyPoolMiddleware v middlewares.py

    Definujte process_request(self, request, spider) pro nastavení request.meta['proxy'] = random.choice(self.proxies).

  3. 3

    Zaregistrujte middleware s prioritou 740 v settings.py

    Přidejte 'myproject.middlewares.ProxyPoolMiddleware': 740 pod DOWNLOADER_MIDDLEWARES a nastavte CONCURRENT_REQUESTS_PER_IP = 2.

  4. 4

    Otestujte pomocí scrapy shell nebo scrapy crawl

    Spusťte testovací požadavek na https://vinaproxy.com/api/my-ip pro ověření rotace a autentizace.

Často kladené otázky

Proč můj vlastní proxy middleware ve Scrapy selhal při nastavení priority 800?

Vestavěný HttpProxyMiddleware ve Scrapy běží s prioritou 750. Pokud váš middleware běží s prioritou 800 (tedy až po 750), přihlašovací údaje user:pass v URL se nikdy nepřevádějí na hlavičku Proxy-Authorization. Vždy nastavte prioritu svého middleware pod 750 (například na 740).

Udržuje Scrapy otevřená trvalá připojení ke každé proxy?

Ano. Connection pool v Twisted udržuje trvalá keep-alive spojení pro každý koncový bod proxy.

Jsou proxy od VinaProxy neomezené pro scrapování milionů stránek ve Scrapy?

Ano. Všechny tarify Dedicated IPv4 a Static ISP zahrnují neomezený měsíční přenos dat.

Škálujte své Scrapy spidery s neomezenými pooly statických IP

Okamžitý hromadný odběr Dedicated IPv4 a Static ISP proxy ze 7 zemí.

Koupit proxy pro Scrapy

Related articles

Proxy podle platforem
Proxy pro web scraping: neomezené pooly dedikovaných IPv4 a ISP pro crawlery 24/7
Rychlé dedikované IPv4 a statické ISP HTTP(S) proxy pro Python, Playwright, Selenium a Scrapy s neomezenými daty měsíčně. Porovnejte tarify a začněte.
Nastavení proxy
Jak používat proxy v Python Requests (HTTP/HTTPS a pooling Sessions)
Nakonfigurujte ověřené HTTP(S) proxy v Python requests a requests.Session(). Vyřešte výjimky 407 ProxyError a snadno rotujte pooly svých statických IP adres.
Nastavení proxy
Jak nastavit proxy v Playwright (autentizace prohlížeče i jednotlivých kontextů)
Nakonfigurujte ověřené HTTP(S) proxy v Playwright pro Node.js a Python a provozujte více izolovaných statických IP napříč BrowserContexty. Zkopírujte si ukázky.
Nástroje zdarma
Hromadný převodník formátů proxy (100% na straně klienta)
100% klientský hromadný formátovač proxy seznamů. Převádějte mezi ip:port:user:pass, user:pass@ip:port, http:// URL, SOCKS5 URI, poli JSON a exporty FoxyProxy.
Proxy podle platforem
Proxy pro SEO a sledování SERP: přesné pozice klíčových slov v 7 zemích
Sledujte lokální pozice klíčových slov, testujte geo-přesměrování a procházejte weby ve Screaming Frog s neomezenými dedikovanými IPv4 a ISP proxy v 7 zemích.
Proxy podle platforem
Proxy pro Amazon: předcházejte označení propojených účtů na Seller Central, KDP a Merch
Snižte riziko blokace propojených účtů na Amazon Seller Central, KDP a Merch díky vyhrazeným US statickým ISP a UK či japonským privátním IPv4 proxy.
IPV4 · united states
Privátní IPv4 proxy v USA: Rychlé a dedikované americké datacenter IP
Dedikované privátní IPv4 proxy v USA pro scraping, sledování pozic, reklamy a Amazon. Statická IP, 1 uživatel na IP, neomezený přenos, rychlá aktivace.
IPV4 · united kingdom
Privátní IPv4 proxy v UK: Statické britské datacenter IP pro prodejce, SEO a reklamy
Vyhrazené privátní IPv4 proxy v UK pro eBay a Amazon.co.uk, měření pozic na google.co.uk, kontrolu reklam i sociální sítě. Neomezený přenos dat.