Jester0
Premium Lite
- Регистрация
- 16 Июн 2015
- Сообщения
- 48
- Реакции
- 128
- Тема Автор Вы автор данного материала? |
- #1
Голосов: 0
Дорогие друзья, честно сказать это всего лишь небольшой инструмент, но с помощью него можно пропарсить весь yandex.market а именно характеристики всех товаров из категории.
За примерно 30-40 минут собрал базу в 1к товаров и разместил на сайте.
Аналогов не встречал
Яндекс не жадничает и думает что мы вполне адекватно роемся по всему сайту.
Шаг 1.
Открываем маркет, заходим в нужную категорию, открываем "Консоль разработчка, F12 в хроме":
https://market.yandex.ru/catalog/59601/list?track=fr_cm_params&exc=1&how=dpop
Шаг 2.
Вставляем скрипт в консоль и запускаем.
В итоге через 40 сек. Мы получаем первые 20 товаров:
При этом страница сама подгружает следующие товары, и может работать в фоне.
В итоге мы получаем к консоли все товары с характеристиками вида:
Где строка вида: Наименование > Группа характеристик; Свойство: значение; Группа характеристик; Свойство: значение; и т.д.
[HIDE-POSTS=10]
setInterval(function() {
$.each($('.snippet-cell.snippet-list__item.island'), function(index, object) {
var link = $(object).find('.snippet-cell__header.link').attr('href');
var name = $(object).find('h4.title.title_size_15').text();
link = link.split('?hid=');
/* запрос на характеристики */
$.ajax({
async: false,
url: link[0]+'/spec',
}).done(function(html) {
var spec = $(html).find('.layout__col.layout__col_size_p75.product-spec');
spec.find('h2').append(';');
spec.find('.product-spec-item__name-inner').append(':');
spec.find('.product-spec-item__value-inner').append(';');
spec.find('.product-spec__info').remove();
spec.find('.product-spec-hint').remove();
spec.find('div.title.title_size_22').remove();
spec.find('.product-links-list').remove();
console.log(name + ' > ', spec.text().trim().replace(/(\n(\r)?)/g, ' '));
console.log(' ');
$(object).remove();
});
});
$('body > div > div:nth-child(4) > div.layout.layout_type_search.i-bem.layout_js_inited > div.layout__col.layout__col_search-results_normal.i-bem > div.pager-more.pager-more__button.i-bem.pager-more_js_inited > button').click();
}, 40000);
[/HIDE-POSTS]
По вопросам интеграции с CMS и автоматизации обращайтесь в скайп: by.xjester
Естественно помогу за умеренную плату.
За примерно 30-40 минут собрал базу в 1к товаров и разместил на сайте.
Аналогов не встречал
Яндекс не жадничает и думает что мы вполне адекватно роемся по всему сайту.
Шаг 1.
Открываем маркет, заходим в нужную категорию, открываем "Консоль разработчка, F12 в хроме":
https://market.yandex.ru/catalog/59601/list?track=fr_cm_params&exc=1&how=dpop
Шаг 2.
Вставляем скрипт в консоль и запускаем.
В итоге через 40 сек. Мы получаем первые 20 товаров:
При этом страница сама подгружает следующие товары, и может работать в фоне.
В итоге мы получаем к консоли все товары с характеристиками вида:
Где строка вида: Наименование > Группа характеристик; Свойство: значение; Группа характеристик; Свойство: значение; и т.д.
[HIDE-POSTS=10]
setInterval(function() {
$.each($('.snippet-cell.snippet-list__item.island'), function(index, object) {
var link = $(object).find('.snippet-cell__header.link').attr('href');
var name = $(object).find('h4.title.title_size_15').text();
link = link.split('?hid=');
/* запрос на характеристики */
$.ajax({
async: false,
url: link[0]+'/spec',
}).done(function(html) {
var spec = $(html).find('.layout__col.layout__col_size_p75.product-spec');
spec.find('h2').append(';');
spec.find('.product-spec-item__name-inner').append(':');
spec.find('.product-spec-item__value-inner').append(';');
spec.find('.product-spec__info').remove();
spec.find('.product-spec-hint').remove();
spec.find('div.title.title_size_22').remove();
spec.find('.product-links-list').remove();
console.log(name + ' > ', spec.text().trim().replace(/(\n(\r)?)/g, ' '));
console.log(' ');
$(object).remove();
});
});
$('body > div > div:nth-child(4) > div.layout.layout_type_search.i-bem.layout_js_inited > div.layout__col.layout__col_search-results_normal.i-bem > div.pager-more.pager-more__button.i-bem.pager-more_js_inited > button').click();
}, 40000);
[/HIDE-POSTS]
По вопросам интеграции с CMS и автоматизации обращайтесь в скайп: by.xjester
Естественно помогу за умеренную плату.
Последнее редактирование модератором: