@dmitriyuvin
FullStack developer ( Laravel & Vue )

Как ускорить парсинг на phpQuery?

require_once('../phpQuery/phpQuery.php');
	require_once('../curl.php');


	$curl = new Curl();
	$links = array(
		"http://www.binance.com/ru/trade/ZEC_BTC",
		"http://www.binance.com/ru/trade/ETH_BTC",
		"http://www.binance.com/ru/trade/DASH_BTC",
		"http://www.binance.com/en/trade/BCHABC_BTC",
		"http://www.binance.com/en/trade/ETC_BTC",
		"http://www.binance.com/en/trade/XRP_BTC",
		"http://www.binance.com/en/trade/DOGE_BTC"
	);
	$curr = array(
		"ZEC_BTC",
		"ETH_BTC",
		"DASH_BTC",
		"BCHABC_BTC",
		"ETC_BTC",
		"XRP_BTC",
		"DOGE_BTC"
	);
for( $i = 0; $i < count($links); $i++){
				$res = $curl->get($links[$i]);
				$doc = phpQuery::newDocument($res->body);
				$block = $doc->find('div.sc-62mpio-0.sc-1yysggs-2.kEGjPf');
				$block = str_replace("–","", $block);
				echo "<tr>";
				echo "<td>".$curr[$i]."</td>";
				echo "<td>".$block."</td>";
				echo "</tr>";
			}

Как сделать так чтобы парсилось быстрее?
  • Вопрос задан
  • 223 просмотра
Решения вопроса 3
glaphire
@glaphire Куратор тега PHP
PHP developer
Вероятно, что здесь bottleneck - это curl запросы, попробуйте ответы из этого треда на stackoverflow
Ответ написан
Комментировать
@ValentinWebStd
веб мастер
Використовуєте багатопоточність Multi Curl..
Є бібліотека для цього RollingCurl...
Також може спробувати Gearman Server
Ответ написан
Комментировать
edward_freedom
@edward_freedom
У бинанса есть открытое api, https://github.com/binance-exchange/binance-offici...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы