Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 13152|Svar: 2

Flera scheman för distribuerade crawlers att använda proxy-IP:n

[Kopiera länk]
Publicerad på 2018-07-17 13:54:35 | | |
Utan proxy-IP kommer crawler-arbete att vara svårt, så många crawleringenjörer behöver köpa effektiv och stabil proxy-IP. Med en högkvalitativ proxy-IP, kan du luta dig tillbaka och slappna av? Det är inte så enkelt, och det är också nödvändigt att optimera systemet, rationellt fördela resurser, förbättra arbetseffektiviteten och utföra crawler-arbete mer effektivt, snabbare och mer stabilt.

Alternativ 1: Varje process väljer slumpmässigt en lista med IP-adresser från gränssnittets API (till exempel att extrahera 100 IP:n åt gången) för att cykla igenom dem, och anropar sedan API:et för att hämta dem om det misslyckas, och den allmänna logiken är följande:

1. Varje process (eller tråd) hämtar slumpmässigt en batch av IP-adresser från gränssnittet och försöker hämta data från IP-listan i en loop.

2. Om åtkomsten lyckas, fortsätt att ta nästa.

3. Om det misslyckas (såsom timeout, verifieringskod, etc.), ta en batch IP-adresser från gränssnittet och fortsätt försöka.

Nackdelar med lösningen: Varje IP har ett utgångsdatum, om 100 extraheras kan de flesta av dessa vara ogiltiga när den tionde används när den tionde används. Om du sätter upp en HTTP-förfrågan med en anslutningstidsavbrott på 3 sekunder och en lästidsavslutning på 5 sekunder, kan du slösa bort 3–8 sekunder, och kanske kan dessa 3–8 sekunder tas dussintals gånger.

Alternativ 2: Varje process tar en slumpmässig IP från gränssnittets API att använda, och anropar sedan API:et för att få en IP om det misslyckas, den allmänna logiken är följande:

1. Varje process (eller tråd) hämtar slumpmässigt en IP från gränssnittet och använder denna IP för att komma åt resurser.

2. Om åtkomsten lyckas, fortsätt att ta nästa.

3. Om det misslyckas (som timeout, verifieringskod, etc.), välj slumpmässigt en IP från gränssnittet och fortsätt försöka.

Nackdelar: Att anropa API:er för att få IP-adresser är mycket vanligt, vilket kommer att sätta stor press på proxyservern, påverka stabiliteten i API-gränssnittet och kan vara begränsat från att extrahera. Detta system är inte heller lämpligt och kan inte drivas på ett hållbart och stabilt sätt.

Alternativ 3: Först extraherar du ett stort antal IP-adresser och importerar dem till den lokala databasen, och tar sedan IP-adressen från databasen, den allmänna logiken är följande:

1. Skapa en tabell i databasen, skriv ett importskript, begär API:et per minut (konsultera proxy-IP-tjänsteleverantörens förslag) och importera IP-listan till databasen.

2. Registrera importtid, IP, port, utgångstid, IP-tillgänglighetsstatus och andra fält i databasen;

3. Skriv ett grab-skript, crab-skriptet läser den tillgängliga IP:n från databasen, och varje process hämtar en IP från databasen för användning.

4. Utför genomsökning, bedöm resultaten, bearbeta cookies, etc., så länge det finns en verifieringskod eller fel, ge upp denna IP och byt till en ny IP.

Denna lösning undviker effektivt förbrukning av proxyserverresurser, fördelar användningen av proxy-IP, är mer effektiv och stabil och säkerställer hållbarhet och stabilitet i arbetet med crawlers.




Föregående:Hur man använder Hreflang för SEO
Nästa:FEL 1093 (HY000): Du kan inte ange måltabellen 'xxx' för upda...
Publicerad på 2018-07-18 14:50:55 |
Är inte schema 3 och schema 1 samma sak, extrahera ett stort antal IP-adresser, och de som inte används senare kommer snart att förfalla
Publicerad på 2019-01-29 21:06:25 |
Mark, jag lärde mig idén, och sedan ska jag försöka skriva ner den
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com