@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.
Что значит забанил?
Залил парсер на хостинг.
Паршу и вывожу обменники в виде таблицы.
СНачала все хорошо выводит, а после нескольких минут, ничего не выводит.
  • Вопрос задан
  • 269 просмотров
Пригласить эксперта
Ответы на вопрос 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 если это не помогает...
+ можно уменьшить скорость парсинга - тогда тоже может лучше будет.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Лучшие люди Иваново
от 40 000 до 90 000 руб.
N1.RU Новосибирск
от 100 000 руб.
Living Core Казань
от 50 000 руб.
22 сент. 2019, в 12:35
600 руб./за проект
22 сент. 2019, в 12:15
12000 руб./за проект