VVinaProxy

Så konfigurerar och roterar du proxyer i Python Scrapy

Updated:

Scrapys asynkrona Twisted-motor innehåller en inbyggd HttpProxyMiddleware (med prioritet 750) som tolkar strängar i formatet http://user:pass@ip:port som tilldelats request.meta['proxy']. Genom att skriva en anpassad Downloader Middleware på 10 rader med prioritet 740 kan dina spindlar automatiskt rotera mellan en pool av obegränsade statiska VinaProxy-IP-adresser.

Scrapy · HTTP Proxy Format
request.meta['proxy'] = 'http://user:pass@ip:port'
Privat IPv4 (datacenter)
🇺🇸 USA
Tillgänglig
Från
20 000 VND / IP / månad
≈ 0,74 US$ · faktureras i VND
Volympriser
  • 1 IP40 000 VND
  • 5+ IP:er35 000 VND
  • 10+ IP:er25 000 VND
  • 20+ IP:er25 000 VND
  • 50+ IP:er25 000 VND
  • 100+ IP:er25 000 VND
  • 200+ IP:er25 000 VND
  • 500+ IP:er25 000 VND
  • 1000+ IP:er22 000 VND
  • 2000+ IP:er20 000 VND
Köp USA
Privat IPv4 (datacenter)
🇬🇧 Storbritannien
Tillgänglig
Från
20 000 VND / IP / månad
≈ 0,74 US$ · faktureras i VND
Volympriser
  • 1 IP40 000 VND
  • 5+ IP:er35 000 VND
  • 10+ IP:er25 000 VND
  • 20+ IP:er25 000 VND
  • 50+ IP:er25 000 VND
  • 100+ IP:er25 000 VND
  • 200+ IP:er25 000 VND
  • 500+ IP:er25 000 VND
  • 1000+ IP:er22 000 VND
  • 2000+ IP:er20 000 VND
Köp Storbritannien

Ordning för Scrapy-proxymiddleware och samtidighetsinställningar

Eftersom HttpProxyMiddleware körs med ordningsnummer 750 för att ta bort user:pass från proxy-URL:en och koda headern Proxy-Authorization, måste all anpassad middleware som ställer in request.meta['proxy'] köras med ett lägre nummer (t.ex. 740):

Scrapy-inställningRekommenderat värdeSyfte
request.meta['proxy']'http://user:pass@ip:port'Dirigerar förfrågan via den angivna VinaProxy-proxyn
Middleware-prioritet740 (före 750)Säkerställer att HttpProxyMiddleware kodar headern user:pass
CONCURRENT_REQUESTS_PER_IP2 till 4Begränsar samtidiga sockets per proxy-IP för att undvika HTTP 429
AUTOTHROTTLE_ENABLEDTrueAnpassar crawl-fördröjningen dynamiskt baserat på målets latens

Bästa praxis för storskalig webbskrapning med Scrapy

  • Läs in din VinaProxy-proxylista i from_crawler() och tilldela request.meta['proxy'] = random.choice(self.proxies) inuti process_request()
  • Aktivera RANDOMIZE_DOWNLOAD_DELAY = True tillsammans med DOWNLOAD_DELAY = 1.0 så att förfrågningsintervallen per IP-adress aldrig framstår som robotaktiga
  • Vid nytt försök (429 eller 503), välj en annan proxy från din pool innan förfrågan köas om

Steg för steg

  1. 1

    Formatera din proxypool som http://user:pass@ip:port

    Klistra in din VinaProxy-lista i vår Proxy Format Converter för att få URL-strängar.

  2. 2

    Skapa en ProxyPoolMiddleware i middlewares.py

    Definiera process_request(self, request, spider) för att sätta request.meta['proxy'] = random.choice(self.proxies).

  3. 3

    Registrera med prioritet 740 i settings.py

    Lägg till 'myproject.middlewares.ProxyPoolMiddleware': 740 under DOWNLOADER_MIDDLEWARES och ställ in CONCURRENT_REQUESTS_PER_IP = 2.

  4. 4

    Testa med scrapy shell eller scrapy crawl

    Kör en testförfrågan mot https://vinaproxy.com/api/my-ip för att verifiera rotation och autentisering.

Vanliga frågor

Varför misslyckades min anpassade Scrapy-proxymiddleware när den sattes till prioritet 800?

Scrapys inbyggda HttpProxyMiddleware körs med prioritet 750. Om din middleware körs med 800 (efter 750) konverteras de infogade inloggningsuppgifterna user:pass aldrig till en Proxy-Authorization-header. Ställ alltid in din middleware-prioritet under 750 (såsom 740).

Håller Scrapy beständiga anslutningar öppna till varje proxy?

Ja. Twisteds anslutningspool upprätthåller beständiga keep-alive-anslutningar per proxyändpunkt.

Är VinaProxy-proxyer obegränsade för Scrapy-jobb med miljontals sidor?

Ja. Alla Dedicated IPv4- och Static ISP-planer inkluderar obegränsad månatlig bandbredd.

Skala upp dina Scrapy-spindlar med obegränsade statiska IP-pooler

Omedelbara Dedicated IPv4- och Static ISP-proxyer i bulk i 7 länder.

Köp Scrapy-proxyer

Related articles

Proxys efter plattform
Proxies för web scraping: obegränsade dedikerade IPv4- och ISP-pooler för 24/7-crawlers
Snabba dedikerade HTTP(S)-IPv4 och statiska ISP-proxies för Python, Playwright, Selenium och Scrapy med obegränsad månatlig bandbredd. Jämför planer och börja.
Proxykonfiguration
Så använder du en proxy i Python Requests (HTTP/HTTPS & sessionspoolning)
Konfigurera autentiserade HTTP(S)-proxier i Python requests och requests.Session(). Hantera 407 ProxyError-undantag och rotera pooler med statiska IP-adresser.
Proxykonfiguration
Så konfigurerar du en proxy i Playwright (webbläsare och per-kontext-autentisering)
Konfigurera autentiserade HTTP(S)-proxys i Playwright för Node.js och Python, och kör flera isolerade statiska IP-adresser i BrowserContexts. Kopiera exemplen.
Gratis verktyg
Proxyformatkonverterare i bulk (100 % på klientsidan)
Bulkformatera proxylistor till 100 % på klientsidan. Konvertera mellan ip:port:user:pass, user:pass@ip:port, http://-URL:er, SOCKS5-URI:er, JSON och FoxyProxy.
Proxys efter plattform
Proxies för SEO och SERP-spårning: exakta sökordsrankningar i 7 länder
Spåra lokal sökordsrankning, granska geo-omdirigeringar och kör Screaming Frog-crawls med obegränsade dedikerade IPv4- och statiska ISP-proxies i 7 länder.
Proxys efter plattform
Proxies för Amazon: förhindra flaggningar för relaterade konton på Seller Central, KDP och Merch
Minska risken för avstängda konton på Amazon Seller Central, KDP och Merch med dedikerade statiska ISP-proxies i USA samt privata IPv4 i Storbritannien/Japan.
IPV4 · united states
Privata IPv4-proxys i USA: Snabba, dedikerade amerikanska datacenter-IP:er
Privata IPv4-proxys i USA för scraping, rank tracking, annonskoll och Amazon-research. Statisk IP, en användare per IP, obegränsad bandbredd, snabb aktivering.
IPV4 · united kingdom
Privata IPv4-proxys i UK: Statiska brittiska datacenter-IP:er för säljare, SEO och annonser
Dedikerade privata IPv4-proxys för eBay UK- och Amazon.co.uk-analys, rank tracking på google.co.uk, UK-annonser och sociala konton. Obegränsad bandbredd.