Если вы занимаетесь продвижением сайта при помощи ссылок, то наверняка используете для этих целей биржу размещения статей Miralinks. Продвижение статьями эффективнее продвижения просто ссылками, поскольку вписать ссылку в свою статью можно более гармонично и меньше шансов, что она будет негативно воспринята поисковыми системами.
Алгоритм отбора площадок
Не все площадки подходят для размещения статей/ссылок. Многие из них уже заспамлены или на них наложены различные фильтры поисковых систем. Удобнее всего выгрузить подходящие площадки из биржи, например из нужно вам раздела по подходящей цене, а затем проверить их качество в одном из сервисов проверки качества сайтов, например checktrust.ru или xtool.ru. Лично я сначала прогоняю через checktrust (отбираю с трастом больше 40-50), а затем еще проверяю xtool, этот сервис находит некоторые проблемы, которые не обнаруживает первый сервис.
Скрипт для экспорта площадок
Неудобно то, что миралинкс не имеет функции выгрузки площадки, то есть в общем случае вам придется копировать адрес каждого сайта по отдельности. Но периодически возникают сервисы/скрипты, позволяющие сделать пакетную выгрузку. Об одном из таких скриптов я расскажу.
Инструкции использования приведены для Google Chrome.
Первоначально в отобранном с помощью фильтра miralinks спике площадок рекомендуется переключиться в режим “Показывать на странице 50 сайтов” (внизу справа). Так у нас будет меньше страниц для обработки скрипта, что ускорит его работу.
Далее нажмите комбинацию клавиш Ctrl + Shift + J для перехода в консоль JavaScript броузера. После нажатия клавиш вы увидите следующее:
Далее в появившееся поле вставляем скрипт. Берем его здесь https://gist.github.com/Danilnd/8896a0a28c7601fc2b4f
или скопируйте отсюда:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
// Chrome —› Инструменты —› Консоль JavaScript (Ctrl + Shift + J) var alllinks = ''; crawler = setInterval(function() { $('.dataTable tbody td.rPosLast .popover-holder.nowrap a:not(.external-link)').each(function() { alllinks += $(this).text() + '\n'; }); var elem = $('a.next.paginate_button:not(.paginate_button_disabled)'); if(elem.length==0){ console.log(alllinks); clearInterval(crawler); }else{ elem.click(); } }, 10000); |
и нажимаем enter.
Далее скрипт начинает работать, вы будете это видеть по изменяющимся страницам на экране. Надо некоторое время подождать после чего вы получите список площадок прямо в консоли.
Как вытащить площадки вместе с ценой?
C помощью данного скрипта никак. Вы можете сначала с помощью фильтра miralinks ограничить перечень площадок только теми, чья цена вас устраивает – то есть сделать фильтр по цене, а уже затем выгрузить их с помощью данного скрипта.
Спасибо автору! Очень помогли сэкономить время.
Протестил скрипт. Скрипт крутой, но пропускает половину площадок.
к сожалению, уже не работает. Страницы листает и больше ничего
Проверил, у меня работает, после отработки скрипта появился список сайтов.
C первого раза не весь список скопировал 5000 вместо 15000
Все работает !
У меня скрипт не вставляется, просто окно как бы не активное. Это апдейт хрома или как?
Оригинал скрипта у меня не работает.
Вот немного переделал его, может кому будет полезно
let arr = [];
crawler = setInterval(function() {
let list = document.querySelectorAll(‘.external-link’);
list.forEach(elem => arr.push(elem.href));
var elem = $(‘a.next.paginate_button:not(.paginate_button_disabled)’);
if(elem.length==0){
console.table(arr);
clearInterval(crawler);
}else{
elem.click();
}
}, 10000);
Виталий, спасибо за скрипт. Поставил его в статью. Только вывод результатов сделал простой, не табличный.
у меня парсит, но не собирает сайты. Походу верстку сменили. Подправил и заработало:
var alllinks = ”;
crawler = setInterval(function() {
$(‘.dataTable tbody td.rPosLast .nowrap .widget-popover-Base .popover-wrapper a:not(.external-link)’).each(function() {
alllinks += $(this).text() + ‘\n’;
});
var elem = $(‘a.next.paginate_button:not(.paginate_button_disabled)’);
if(elem.length==0){
console.log(alllinks);
clearInterval(crawler);
}else{
elem.click();
}
}, 10000);