Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Возможно ли получить данные? (https://javascript.ru/forum/dom-window/35961-vozmozhno-li-poluchit-dannye.html)

JGalt 27.02.2013 17:31

Возможно ли получить данные?
 
Всем привет! В скриптах понимаю очень мало, и как ни пытался разобраться с этим вопросом не получается! Возможно ли со страницы http://www.wildberries.ru/catalog/1788/page.aspx достать список всех товаров. Обычным парсингом не устраивает т.к. слишком долго обрабатывается.

Serg_pnz 27.02.2013 17:35

Что значит "обычным парсингом"?

JGalt 27.02.2013 17:37

Всмысле получить код страницы и отбирать нужные данные

Serg_pnz 27.02.2013 17:38

влёт открывается http://pars004.jcase.ru/

JGalt 27.02.2013 17:46

это если там 100 или 200 товаров отображено, а если 11000 как в некоторых акциях...

Serg_pnz 27.02.2013 17:50

JGalt,
так парсеру можно сказать не 30 секунд работать, а вечность О_о
set_time_limit(0);
ini_set("memory_limit", "1000M");


ну почти вечность. у меня скрипт работал минут по 30-50 не останавливаясь

JGalt 27.02.2013 17:55

т.е. никак быстрее не получится? а каким парсером пользцетесь? (всмысле можно код)

Serg_pnz 27.02.2013 18:02

Что значит "каким"? Курлами... А уж потом регулярками разбираю.
function reads($link, $proxy=0) {
	$ch = curl_init();
	if ($proxy) curl_setopt($ch, CURLOPT_PROXY, $proxy);
    curl_setopt($ch, CURLOPT_URL, $link);
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.10 (KHTML, like Gecko) Chrome/8.0.552.215 Safari/534.10');
    curl_setopt($ch, CURLOPT_HEADER, 0);
	curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $res = curl_exec($ch);
    curl_close($ch);

	//return iconv("UTF-8", "CP1251", $res);
	return $res;
}

$in = reads ('http://www.wildberries.ru/catalog/1788/page.aspx');

JGalt 27.02.2013 18:07

а как можно еще и по внутренним страницам сразу пройтись?

Serg_pnz 27.02.2013 20:07

Поэтапно. 1 - собрать урлы. 2 - пропарсить набранное
Как-то было дело гра... собирал инфу 45 тыс. предприятий с желтых страниц. Что бы не положить сервер донора скрипт делал паузы по одной секунде. На всё понадобилось где-то 5 дней практически непрерывной работы.


Часовой пояс GMT +3, время: 21:50.