@dmitriyuvin

Банит при парсинге ( слишком много запросов). Как исправить?

<?php
	require_once('../phpQuery/phpQuery.php');
	require_once('../curl.php');
	require_once('../simple_html_dom.php');



	$curl = new Curl();

	$res = $curl->get('http://www.bestchange.ru/qiwi-to-ripple.html');
	$doc = phpQuery::newDocument($res->body);
	$changes = $doc->find('div#rates_block table#content_table tr');

	foreach ($changes as $change) {
		$pq = pq($change);
  }
?>
Как сделать чтобы не банил сайт при парсинге?
Слишком много запросов.
Паршу обменники с bestchange.ru.
Что значит забанил?
Залил парсер на хостинг.
Паршу и вывожу обменники в виде таблицы.
СНачала все хорошо выводит, а после нескольких минут, ничего не выводит.
  • Вопрос задан
  • 266 просмотров
Пригласить эксперта
Ответы на вопрос 6
Zoominger
@Zoominger
Сись админ
Используйте для пачек запросов прокси, например.
Ответ написан
@dmitriyuvin Автор вопроса
Добавил CURL.
$ch = curl_init('http://www.bestchange.ru/qiwi-to-zcash.html');
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
	curl_setopt($ch, CURLOPT_PROXY, '188.130.134.13:46546'); // есть список proxy
	curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
	curl_close($ch);
Ответ написан
@d-sem
Использовать пул прокси серверов, разносить парсинг во времени через очереди или крон, использовать headless браузер (puppeteer, например).

А лучше все вместе.
Ответ написан
@bratok191
Напишите что за сайт хотя бы?
и в каком плане банит? может капчу например дает на разгадывание - в этом случае можно использовать сервисы распознавания rucaptcha.
или менять ip если это не помогает...
+ можно уменьшить скорость парсинга - тогда тоже может лучше будет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
16 сент. 2019, в 19:16
50000 руб./за проект
16 сент. 2019, в 18:39
2000 руб./за проект
16 сент. 2019, в 18:30
3000 руб./за проект