Pacifik Опубликовано 24 ноября, 2013 Жалоба Поделиться Опубликовано 24 ноября, 2013 Парсер характеристик товаров не с Яндекса, а, например, с Mail ru делал кто-нибудь?Характеристики вообще перестали париться с Яндекса, прикрывают они лавочку под API Вот тут лежат характеристики, как сделать парсер с майл кто делал?http://hi-tech.mail.ru/catalog/samsung/samsung_galaxy_mega_6_3_16gb_14081937/ Так же на торг майл есть http://torg.mail.ru/mobilephones/samsung-galaxy-s-4-16gb-id13894410/ Цитата Ссылка на сообщение Поделиться на другие сайты
Виталий Анатольевич Опубликовано 24 ноября, 2013 Жалоба Поделиться Опубликовано 24 ноября, 2013 может будет проще адаптировать яшу? Цитата Ссылка на сообщение Поделиться на другие сайты
Pacifik Опубликовано 24 ноября, 2013 Автор Жалоба Поделиться Опубликовано 24 ноября, 2013 может будет проще адаптировать яшу?в общем как то этот вопрос нужно решить, или сделать что-то с яндексом, или сменить источник, если кто-то делал, поделитесь. Цитата Ссылка на сообщение Поделиться на другие сайты
Виталий Анатольевич Опубликовано 24 ноября, 2013 Жалоба Поделиться Опубликовано 24 ноября, 2013 <?php $use_curl = true; // Использовать CURL // Ключевое слово для поиска $keyword = $_GET['keyword']; $keyword = str_replace(' ', '+', $keyword); // Адрес страницы с результатами поиска $url = "http://market.yandex.ru/search.xml?text=$keyword&nopreciser=1"; // Выбираем результаты поиска $page = get_page($url); // Находим ссылку на описание товара if(preg_match_all('/<h3 class="b-offers__title"><a href="(.*?)" class="b-offers__name">/ui', $page, $matches)) $product_url = 'http://market.yandex.ru'.reset($matches[1]); else return false; $page = get_page($product_url); if(preg_match_all('/<ul class="b-vlist b-vlist_type_mdash b-vlist_type_friendly">(.*?)<\/ul>/ui', $page, $matches)) { // Описание товара $description = '<ul>'.reset($matches[1]).'</ul>'; $result->description = $description; // Страница характеристик if(preg_match_all('/<p class="b-model-friendly__title"><a href="(.*?)">все характеристики<\/a><\/p>/ui', $page, $matches)) { $options_url = 'http://market.yandex.ru'.reset($matches[1]); $options_page = get_page($options_url); preg_match_all('/<th class="b-properties__label b-properties__label-title"><span>(.*?)<\/span><\/th><td class="b-properties__value">(.*?)<\/td>/ui', $options_page, $matches, PREG_SET_ORDER); $options = array(); foreach($matches as $m) { $option = null; $option->name = $m[1]; $option->value = $m[2]; $options[] = $option; } $result->options = $options; } else return false; } else return false; header("Content-type: application/json; charset=UTF-8"); header("Cache-Control: must-revalidate"); header("Pragma: no-cache"); header("Expires: -1"); print(json_encode($result)); function get_page($url, $use_curl=true) { if($use_curl && function_exists('curl_init')) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_REFERER, 'http://google.com'); curl_setopt($ch, CURLOPT_USERAGENT, "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.9.168 Version/11.51"); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Для использования прокси используйте строки: //curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1); //curl_setopt($ch, CURLOPT_PROXY, '88.85.108.16:8080'); //curl_setopt($ch, CURLOPT_PROXYUSERPWD, 'user:password'); // Яндекс может нас отправить в редирект, так что нужно следовать за редиректом do{ curl_setopt($ch, CURLOPT_URL, $url); $header = curl_exec($ch); $code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if($code == 301 || $code == 302) { preg_match('/Location:(.*?)\n/', $header, $matches); $url = trim(array_pop($matches)); } else $code = 0; }while($code); $page = curl_exec($ch); curl_close($ch); } else { $page = file_get_contents($url); } return $page; } Цитата Ссылка на сообщение Поделиться на другие сайты
Pacifik Опубликовано 25 ноября, 2013 Автор Жалоба Поделиться Опубликовано 25 ноября, 2013 код стандартного файла зачем мне? Запустил Результат Цитата Ссылка на сообщение Поделиться на другие сайты
Виталий Анатольевич Опубликовано 25 ноября, 2013 Жалоба Поделиться Опубликовано 25 ноября, 2013 1 версия симплы?2 были ли изменения в товаре?3 характеристики получаются при условии совпадения названия товара с яшей Цитата Ссылка на сообщение Поделиться на другие сайты
Pacifik Опубликовано 25 ноября, 2013 Автор Жалоба Поделиться Опубликовано 25 ноября, 2013 1 версия симплы?2 были ли изменения в товаре?3 характеристики получаются при условии совпадения названия товара с яшейДавно перестал работать парсер, еще с 2.1.5, на 2.2 ничего не изменилось. Это не только у меня, у многих не работает. Все совпадает. Тема с баном IP адреса или домена не прокатывает. Тестировали на новых IP и доменах, тоже не работает. Цитата Ссылка на сообщение Поделиться на другие сайты
Виталий Анатольевич Опубликовано 25 ноября, 2013 Жалоба Поделиться Опубликовано 25 ноября, 2013 Я на 2.2.4 тестил - работает...посмотрите на демо - тоже работает Цитата Ссылка на сообщение Поделиться на другие сайты
Pacifik Опубликовано 25 ноября, 2013 Автор Жалоба Поделиться Опубликовано 25 ноября, 2013 У меня характеристики заполняются.Например, на название товара LG 3000 или LG 2000. Версия 2.2.4. На демо-сайте работает. Если у Вас не идет, надо все детали проверять. Может быть, в частности, и из-за хостинга (например curl отключен).Есть curl и работает. Может какие то еще расширения требуются, подскажите ? Цитата Ссылка на сообщение Поделиться на другие сайты
Виталий Анатольевич Опубликовано 25 ноября, 2013 Жалоба Поделиться Опубликовано 25 ноября, 2013 доступы в студию. Самому интересно стало Цитата Ссылка на сообщение Поделиться на другие сайты
Pacifik Опубликовано 25 ноября, 2013 Автор Жалоба Поделиться Опубликовано 25 ноября, 2013 доступы в студию. Самому интересно сталоСпасибо, добрый человек, помог! Цитата Ссылка на сообщение Поделиться на другие сайты
Danya Опубликовано 26 ноября, 2013 Жалоба Поделиться Опубликовано 26 ноября, 2013 в чем дело-то было? Цитата Ссылка на сообщение Поделиться на другие сайты
Виталий Анатольевич Опубликовано 27 ноября, 2013 Жалоба Поделиться Опубликовано 27 ноября, 2013 Я ему скинул вариант с анонимайзером.... дело в хосте. Яша блочил как робота Цитата Ссылка на сообщение Поделиться на другие сайты
kib Опубликовано 3 февраля, 2014 Жалоба Поделиться Опубликовано 3 февраля, 2014 Я ему скинул вариант с анонимайзером.... дело в хосте. Яша блочил как роботаСкиньте и здесь пожалуйста, та же проблема. Интересно что картинки парсит, а характеристики нет. Цитата Ссылка на сообщение Поделиться на другие сайты
Виталий Анатольевич Опубликовано 5 февраля, 2014 Жалоба Поделиться Опубликовано 5 февраля, 2014 http://bit.ly/1auHisw Цитата Ссылка на сообщение Поделиться на другие сайты
imoto Опубликовано 14 апреля, 2014 Жалоба Поделиться Опубликовано 14 апреля, 2014 UP, ребята проблема актуальна на сегодняшний день, парсит не все параметры, а некоторые даже и неправильно, на демо такая же ситуация, кто столкнулся с этим? ..... проблема решена. Цитата Ссылка на сообщение Поделиться на другие сайты
lazareff Опубликовано 16 июля, 2014 Жалоба Поделиться Опубликовано 16 июля, 2014 Ну "решена" это хорошо, а где решение? Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 16 июля, 2014 Жалоба Поделиться Опубликовано 16 июля, 2014 Ну "решена" это хорошо, а где решение?Почитать новые темы форума ну так же лень наверное. Вот тут подробно написано как обновить парсер без обновления всей системы http://forum.simplacms.ru/topic/7849-новая-simpla-236-от-14-июля-2014-новый-парсер-товаров/ Цитата Ссылка на сообщение Поделиться на другие сайты
lazareff Опубликовано 17 июля, 2014 Жалоба Поделиться Опубликовано 17 июля, 2014 Не, мне обновлять не надо, проблема в другом. После нескольких запросов яндекс начинает запрашивать капчу, Я уже подставил список из нескольких прокси, но хватает не надолго. Вот думаю как обойти это, вижу два пути. 1. попробовать тянуть через АПИ маркета, если позволит.2. перехватить страницу с капчей и запостить ее курлом назад Цитата Ссылка на сообщение Поделиться на другие сайты
lazareff Опубликовано 17 июля, 2014 Жалоба Поделиться Опубликовано 17 июля, 2014 Хотя да, я извиняюсь что написал в эту тему, создам наверное новую Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.