Рубрика развивается при поддержке
Сервисы
Vadik Sh
954

Копируем отзывы с «Отзовика» в «Google Таблицу»

Маленькая браузерная программка (букмарклет) для маркетолога. Копирует 20 отзывов в один клик, вставка с разбиением по колонкам: дата, оценки, достоинства, недостатки, лайки, комментарии, описание отзыва, ссылка на развёрнутый отзыв.

В закладки

Всем привет!

Мы часто анализируем отзывы и для удобства копируем их в общую таблицу. Чтобы упростить жизнь маркетологу, мы написали маленькую программу для браузера (букмарклет), которая немного упрощает работу с копированием отзывов. Решили поделиться методом, вдруг вам тоже будет полезно.

Инструкция

Копируем этот код.

javascript:(function(){var fullRating = document.querySelectorAll('.product-header-rating-row')[0].querySelectorAll('.product-rating')[0].getAttribute('title').replace('Общий рейтинг: ',''); var company = document.querySelectorAll('.breadcrumbs')[0].querySelectorAll('.brand')[0].innerText; var commonPercent = document.querySelectorAll('.product-header-rating-row')[0].querySelectorAll('.recommend-ratio > span')[0].innerText.replace('%',''); var output = ""; document.querySelectorAll('.review-list-chunk > .item').forEach(function(item){ var title = item.querySelectorAll('.review-title')[0].innerText; var link = item.querySelectorAll('.review-title')[0].href; var date = item.querySelectorAll('.review-postdate>span')[0].innerText; var date = item.querySelectorAll('.review-postdate>span')[0].innerText; var desc = item.querySelectorAll('.review-teaser')[0].innerText; var plus = item.querySelectorAll('.review-plus')[0].innerText; var minus = item.querySelectorAll('.review-minus')[0].innerText; var comments = item.querySelectorAll('.review-comments')[0].getAttribute('title').replace('Комментарии к отзыву: ',''); var likes = item.querySelectorAll('.review-yes')[0].getAttribute('title').replace('Отзыв понравился ', '').replace(' пользователям', '').replace(' пользователю', ''); var rat = item.querySelectorAll('.product-rating')[0].getAttribute('title').replace('Общий рейтинг: ', ''); output = output + date+'\t'+company+'\t'+commonPercent+'\t'+fullRating+'\t'+title+'\t'+plus+'\t'+minus+'\t'+desc+'\t'+rat+'\t'+likes+'\t'+comments+'\t'+link+'\n'; }); var div = document.createElement('DIV'); div.setAttribute("id", "theWindowParser"); div.style.cssText = 'position: fixed; top: 0px; z-index: 77777; background: #ccc; width: 100%; box-shadow: black 1px 1px 3px 1px;'; div.innerHTML = '<div><div><span style="cursor:pointer; color:red; margin: 5px 15px 5px 5px; float:right;" onclick="var win = document.querySelectorAll(\'#theWindowParser\')[0]; win.parentElement.removeChild(win)">X</span></div><div style="clear:both;"></div><div style="margin:15px;"><textarea style="width:100%; height:300px; margin:-5px;" id="theOutputText">'+output+'</textarea></div></div>'; document.getElementsByTagName('body')[0].appendChild(div); document.querySelectorAll('#theOutputText')[0].select(); document.execCommand('copy'); })();void(0);

Открываем диспетчер закладок браузера и создаём новую закладку. В поле URL вставляем код и сохраняем закладку.

Переходим на страницу отзывов компании, например на эту.

Нажимаем на закладку, появится окно.

Данные уже скопированы

Переходим в «Google Таблицу» и нажимаем ctrl+v. Кстати, может и обычный Office работает, мы не пробовали.

Всё!

Теперь можно ходить по страницам компаний на «Отзовике» и собирать отзывы копируя их по 20 штук за один клик.

Спасибо за внимание. Надеемся, вам будет полезно это решение.

Материал опубликован пользователем.
Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Vadik Sh", "author_type": "self", "tags": ["\u043e\u0442\u0437\u044b\u0432\u044b","theoutputtext","ccc"], "comments": 7, "likes": 18, "favorites": 99, "is_advertisement": false, "subsite_label": "services", "id": 82015, "is_wide": false, "is_ugc": true, "date": "Thu, 05 Sep 2019 20:49:04 +0300", "is_special": false }
Облачная платформа
Основа для цифровизации бизнеса
0
{ "id": 82015, "author_id": 162764, "diff_limit": 1000, "urls": {"diff":"\/comments\/82015\/get","add":"\/comments\/82015\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/82015"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 200396, "last_count_and_date": null }
7 комментариев
Популярные
По порядку
Написать комментарий...
0

А в чем бизнес смысл копировать отзывы? Чтобы что?

Ответить
1

Да, и правда зачем? Кому нахрен какое дело че там юзеры пишут. Надо просто ботов заказать, чтобы они хороших отзывов понаоставлчли и збс - бизнес сразу попрет!

Ответить
0

А почему их на сайте нельзя прочитать и ответить там же?
Их выгружают чтобы потом в какую срм загрузить или что?

Ответить
1

Да, выгрузить в срм.
Также можно сгруппировать по типу проблем и передать соответствующим отделам - это продуктивнее, чем заставить всех перечитывать тонны комментов.
Можно делать какую то аналитику по отзывам, хоть бы по динамике рейтинга, вычленять самые животрепещущие темы, в целом понять как пользователи представляют себе продукт или какую-то его часть.

Ответить
0

Интересно, спасибо. Но для больших объемов лучше написать простой парсер на любом языке. И далее создать шаблон для парсинга конкретного сайта дело 5 минут. (условие получения текста страницы с/до определенного места для ускорения, поиск по шаблонам тегов значений внутри, обернуть в цикл)

Ответить
0

Неужели нет парсеров, которые выгружают отзывы разом?) Мне кажется, таких решений должно быть полным полно

Ответить
0

Откуда? Обычно у всех этих сервисов прям в соглашение прописан запрет на парсинг, плюс они с ним борются активно. А публичное api бывает редко, часто просто для галочки, либо заточенное чисто под какого-то партнера.

Ответить
{ "page_type": "article" }

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "Article Branding", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "cfovx", "p2": "glug" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Баннер в ленте на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvc" } } }, { "id": 19, "disable": true, "label": "Тизер на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "p1": "cbltd", "p2": "gazs" } } } ] { "page_type": "default" }