Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 13152|Отговор: 2

Няколко схеми за разпределени краулъри да използват прокси IP адреси

[Копирай линк]
Публикувано в 17.07.2018 г. 13:54:35 ч. | | |
Без прокси IP работата с краулърите ще бъде трудна, затова много crawler инженери трябва да купуват ефективен и стабилен прокси IP. С висококачествен прокси IP, можеш ли да се отпуснеш и да се отпуснеш? Нещата не са толкова прости, а също така е необходимо да се оптимизира схемата, рационално да се разпределят ресурсите, да се подобри ефективността на работата и да се извършва работа с crawler по-ефективно, по-бързо и по-стабилно.

Опция 1: Всеки процес случайно избира списък с IP адреси от интерфейсния API (например извлича 100 IP адреса наведнъж), за да ги превключва, и след това извиква API-то, за да ги получи, ако не успее, като общата логика е следната:

1. Всеки процес (или нишка) случайно извлича партида IP адреси от интерфейса и се опитва да извлече данни от IP списъка в цикъл.

2. Ако достъпът е успешен, продължете да взимате следващия.

3. Ако се провали (като таймаут, код за верификация и др.), вземете партида от IP адреси от интерфейса и продължете опитите.

Недостатъци на решението: Всеки IP има срок на годност, ако се извлекат 100, когато се използва десетият, повечето от последните може да са невалидни. Ако настроите HTTP заявка с тайм-аут на връзката от 3 секунди и тайм-аут за четене от 5 секунди, може да загубите 3-8 секунди време, а тези 3-8 секунди може да бъдат взети десетки пъти.

Опция 2: Всеки процес взема случаен IP от интерфейсния API за използване и след това извиква API-то, за да получи IP, ако се провали, общата логика е следната:

1. Всеки процес (или нишка) случайно извлича IP адрес от интерфейса и използва този IP за достъп до ресурси.

2. Ако достъпът е успешен, продължете да взимате следващия.

3. Ако не успее (като таймаут, код за верификация и др.), изберете на случаен принцип IP адрес от интерфейса и продължете да опитвате.

Недостатъци: Извикването на API за получаване на IP адреси е много често, което ще окаже голям натиск върху прокси сървъра, ще повлияе на стабилността на API интерфейса и може да бъде ограничено при извличане. Тази схема също не е подходяща и не може да се управлява устойчиво и стабилно.

Вариант 3: Първо, извличайте голям брой IP адреси и ги импортирайте в локалната база данни, след което вземете IP адреса от базата данни, общата логика е следната:

1. Създайте таблица в базата данни, напишете скрипт за импорт, заявете API на минута (консултирайте предложенията на доставчика на IP услуги) и импортирайте IP списъка в базата данни.

2. Запишете времето на импорт, IP адреса, порта, срока на изтичане, статуса на наличност на IP адреса и други полета в базата данни;

3. Напишете grab скрипт, crab скриптът чете наличния IP от базата данни и всеки процес получава IP от базата данни за използване.

4. Извършвайте обхождане, оценявайте резултатите, обработвайте бисквитки и т.н., докато има код за верификация или повреда, отказвайте се от този IP адрес и преминете към нов.

Това решение ефективно избягва консумацията на ресурси на прокси сървъра, ефективно разпределя използването на прокси IP, е по-ефективно и стабилно и гарантира издръжливостта и стабилността на работата с краулъри.




Предишен:Как да използвате Hreflang за SEO
Следващ:ГРЕШКА 1093 (HY000): Не можете да посочите целева таблица 'xxx' за upda...
Публикувано в 18.07.2018 г. 14:50:55 ч. |
Не е ли Схема 3 и Схема 1 една и съща – ако извличаш голям брой IP адреси, тези, които не се използват по-късно, скоро ще изтекат
Публикувано в 29.01.2019 г. 21:06:25 ч. |
Марк, научих идеята и после ще се опитам да я напиша
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com