⊗ppPsAiICh 74 of 84 menu

Змена IP пры парсінгу ў PHP

З-за затрымак, устаўляемых пры парсінгу, хуткасць работы парсера істотна запавольваецца. Яе, аднак, можна павялічыць, калі ў вас ёсць некалькі IP адрасоў. Тады кожны запыт да сайта можна рабіць з другога IP, што дазволіць выставіць меншы час затрымак (ў столькі разоў менш, колькі ў вас IP адрасоў). Для гэтага ёсць два спосабы.

Першы спосаб - купіць дадатковыя IP адрасы на хостингу. У гэтым выпадку пераключэнне IP пры парсінгу выконваецца наступнай опцыяй CURL:

<?php curl_setopt($curl, CURLOPT_INTERFACE, 'ip адрас'); ?>

Другі спосаб - купіць проксі-серверы на спецыяльных сэрвісах (можна выкарыстоўваць і бясплатныя проксі, але як паказвае практыка - яны асабліва не працуюць). У выпадку з проксі пераключэнне ip пры парсінгу выконваецца наступнай опцыяй CURL:

<?php curl_setopt($curl, CURLOPT_PROXY, 'ip адрас'); ?>

Напішыце парсер, які будзе працаваць са зменай IP адрасоў.

Мэтавы сайт можа забаниць адзін ці некалькі вашых адрасоў падчас парсінгу. Дадайце праверку, якая будзе правяраць, працуе лі IP і часова ўбіраць яго з спісу, калі ён забанены.

Чым больш мэтавы сайт баніць вашых IP, тым больш узрастае нагрузка на астатнія. Зрабіце так, каб час затрымак павялічваўся пры памяншэнні колькасці IP адрасоў.

byfrhiidde