Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 13152|Odpowiedź: 2

Kilka schematów dla rozproszonych crawlerów korzystających z adresów IP proxy

[Skopiuj link]
Opublikowano 17.07.2018 13:54:35 | | |
Bez IP proxy praca nad crawlerem będzie trudna, więc wielu inżynierów crawlerów musi kupować wydajne i stabilne IP proxy. Z wysokiej jakości IP proxy, czy możesz się zrelaksować? Sprawy nie są takie proste – konieczne jest także zoptymalizowanie schematu, racjonalne alokowanie zasobów, poprawa efektywności pracy oraz wykonywanie pracy z crawlerami bardziej efektywnie, szybciej i stabilniej.

Opcja 1: Każdy proces losowo wybiera listę IP z API interfejsu (na przykład wyodrębniając 100 IP jednocześnie), aby je przejść, a następnie wywołuje API, aby je uzyskać, jeśli się nie powiedzie, a ogólna logika jest następująca:

1. Każdy proces (lub wątek) losowo pobiera partię IP z interfejsu i próbuje pobrać dane z listy IP w pętli.

2. Jeśli dostęp się uda, kontynuuj pobieranie kolejnego.

3. Jeśli się nie powiedzie (np. timeout, kod weryfikacyjny itp.), pobierz partię IP z interfejsu i kontynuuj próby.

Wady rozwiązania: Każde IP ma datę ważności, jeśli wyodrębni się 100, a przy użyciu dziesiątego może być nieważna. Jeśli ustawisz żądanie HTTP z limitem połączenia wynoszącym 3 sekundy i limitem odczytu 5 sekund, możesz zmarnować 3-8 sekund czasu, a te 3-8 sekund może być pobrane dziesiątki razy.

Opcja 2: Każdy proces przyjmuje losowe IP z API interfejsu, a następnie wywołuje API, aby uzyskać IP, jeśli się nie powiedzie, ogólna logika jest następująca:

1. Każdy proces (lub wątek) losowo pobiera adres IP z interfejsu i wykorzystuje go do dostępu do zasobów.

2. Jeśli dostęp się uda, kontynuuj pobieranie kolejnego.

3. Jeśli się nie powiedzie (np. przy wymianie czasu, kodie weryfikacyjnym itp.), wybierz losowo adres IP z interfejsu i kontynuuj próbę.

Wady: Bardzo często wywoływanie API w celu uzyskania adresów IP, co wywiera dużą presję na serwer proxy, wpływa na stabilność interfejsu API i może być ograniczone w możliwości wyodrębniania. Ten system również nie jest odpowiedni i nie może być realizowany w sposób zrównoważony i stabilny.

Opcja 3: Najpierw wyodrębnij dużą liczbę IP i zaimportuj je do lokalnej bazy danych, a następnie pobierz IP z bazy; ogólna logika jest następująca:

1. Utworzenie tabeli w bazie danych, napisanie skryptu importującego, żądanie API co minutę (konsultacja z zaleceniami dostawcy usług IP proxy) oraz import listy IP do bazy danych.

2. Zapisz czas importu, IP, port, czas wygaśnięcia, status dostępności IP i inne pola w bazie danych;

3. Napisz skrypt grab, skrypt crab odczytuje dostępny adres IP z bazy danych, a każdy proces pobiera IP z bazy do użycia.

4. Przeprowadz indeksowanie, oceniaj wyniki, przetwarzaj ciasteczka itp., o ile jest kod weryfikacyjny lub awaria, zrezygnuj z tego IP i zmienij na nowy IP.

To rozwiązanie skutecznie eliminuje zużycie zasobów serwera proxy, efektywnie przydziela użycie IP proxy, jest bardziej efektywne i stabilne oraz zapewnia trwałość i stabilność pracy crawlera.




Poprzedni:Jak korzystać z Hreflang do SEO
Następny:BŁĄD 1093 (HY000): Nie możesz podać docelowej tabeli 'xxx' dla upda...
Opublikowano 18.07.2018 14:50:55 |
Czy schemat 3 i schemat 1 to to samo, wyodrębnisz dużą liczbę IP, a te, które nie zostaną użyte później, wkrótce wygasną
Opublikowano 29.01.2019 21:06:25 |
Mark, poznałem ten pomysł, a potem spróbuję go napisać
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com