-
-
Save max-frai/2243e4c8423c04f1b262d4a4eccb9ed6 to your computer and use it in GitHub Desktop.
var interval = window.setInterval(function() { | |
var moreButton = document.querySelector('a[ajaxify*="outgoing/more"]'); | |
if (moreButton) | |
{ | |
moreButton.click(); | |
console.log('loading more...'); | |
} | |
else | |
{ | |
//window.clearInterval(interval); | |
var outgoing = document.querySelector('button.FriendRequestOutgoing'); | |
if (!outgoing) | |
{ | |
window.clearInterval(interval); | |
console.log('FINISH'); | |
} | |
else | |
{ | |
try { | |
outgoing.click(); | |
document.querySelector('li.FriendListCancel').click(); | |
window.setTimeout(function() { | |
document.querySelector('button.layerConfirm').click(); | |
outgoing.parentNode.removeChild(outgoing); | |
}, 500); | |
}catch(e) {console.log(e);} | |
} | |
} | |
}, 1000); |
На какой странице нужно запускать этот скрипт?
На какой странице нужно запускать этот скрипт?
https://www.facebook.com/friends/requests/?fcref=none&outgoing=1
этот код будет постабильнее
var maxCount=20, count=0, canceledPause = 9 * 1000;
function waitForScroll() {
return new Promise(function(resolve, reject) {
var interval = window.setInterval(function() {
var moreButton = document.querySelector('a[ajaxify*="outgoing/more"]');
if (moreButton && maxCount > count)
{
moreButton.click();
console.log('loading more...');
count++;
}
else
{
window.clearInterval(interval);
resolve();
}
}, 1000, resolve);
});
}
waitForScroll().then(function() {
var canceled = 0;
var cancelFriends = document.querySelectorAll('button.FriendRequestOutgoing');
cancelFriends = Array.prototype.slice.call(cancelFriends).reverse();
console.log('Friends find:' + cancelFriends.length);
var clickInterval = window.setInterval(function() {
if (!cancelFriends.length){
window.clearInterval(clickInterval);
return;
}
var outgoing = cancelFriends.pop();
try {
if (!outgoing){
console.log('FINISH');
window.clearInterval(clickInterval);
return;
}
outgoing.click();
window.setTimeout(function() {
var cancel = document.querySelector('li.FriendListCancel');
cancel.click();
window.setTimeout(function() {
confirm = document.querySelector('button.layerConfirm');
if (confirm){
confirm.click();
console.log('Canceled #'+canceled++);
}
}, 3000);
}, 1000);
}catch(e) {console.log(e);}
}, canceledPause);
});
этот код будет постабильнее
var maxCount=20, count=0, canceledPause = 9 * 1000; function waitForScroll() { return new Promise(function(resolve, reject) { var interval = window.setInterval(function() { var moreButton = document.querySelector('a[ajaxify*="outgoing/more"]'); if (moreButton && maxCount > count) { moreButton.click(); console.log('loading more...'); count++; } else { window.clearInterval(interval); resolve(); } }, 1000, resolve); }); } waitForScroll().then(function() { var canceled = 0; var cancelFriends = document.querySelectorAll('button.FriendRequestOutgoing'); cancelFriends = Array.prototype.slice.call(cancelFriends).reverse(); console.log('Friends find:' + cancelFriends.length); var clickInterval = window.setInterval(function() { if (!cancelFriends.length){ window.clearInterval(clickInterval); return; } var outgoing = cancelFriends.pop(); try { if (!outgoing){ console.log('FINISH'); window.clearInterval(clickInterval); return; } outgoing.click(); window.setTimeout(function() { var cancel = document.querySelector('li.FriendListCancel'); cancel.click(); window.setTimeout(function() { confirm = document.querySelector('button.layerConfirm'); if (confirm){ confirm.click(); console.log('Canceled #'+canceled++); } }, 3000); }, 1000); }catch(e) {console.log(e);} }, canceledPause); });
Огромное вам спасибо! Все работает!
LiFeAiR Можете помочь с кодом?
@LiFeAiR Можете помочь с кодом?
@aleksandrkuzminv чем помочь?
Добрый день! @LiFeAiR
Мне очень нравятся ваши решения! Я не совсем программист, чуть-чуть разбираюсь в этом! В данный момент испытываю не удобства с друзьями в facebook и особенно с ботами! @max-frai раньше писали код для удаления друзей с пометкой не активные пользователи и удаление ботов! Ссылка: https://gist.github.com/max-frai/ab672ecbd5dea7cd49af6d25599eb830 Я попробовал не чего не получается, мне кажется не работает из зи смены дизайна в facebook или что-то другое!
Под @max-frai кодом люди тоже писали что не работает! Помощь нужно с кодом может я что-то не так делаю, а может и код нужно поправить!
Я был бы Вам @LiFeAiR очень благодарен, если вы исправите код так что бы заработал! Уж очень рутина определять не активных пользователей!
Спасибо заранее!
Добрый день! @LiFeAiR
Мне очень нравятся ваши решения! Я не совсем программист, чуть-чуть разбираюсь в этом! В данный момент испытываю не удобства с друзьями в facebook и особенно с ботами! @max-frai раньше писали код для удаления друзей с пометкой не активные пользователи и удаление ботов! Ссылка: https://gist.github.com/max-frai/ab672ecbd5dea7cd49af6d25599eb830 Я попробовал не чего не получается, мне кажется не работает из зи смены дизайна в facebook или что-то другое!
Под @max-frai кодом люди тоже писали что не работает! Помощь нужно с кодом может я что-то не так делаю, а может и код нужно поправить!
Я был бы Вам @LiFeAiR очень благодарен, если вы исправите код так что бы заработал! Уж очень рутина определять не активных пользователей!
Спасибо заранее!
Это НЛП)
Но попробуйте такой скрипт
он проще предыдущего и работает быстрее
var maxCount=20, count=0, canceledPause = 500;
function waitForScroll() {
return new Promise(function(resolve, reject) {
var interval = window.setInterval(function() {
var moreButton = document.querySelector('div[aria-label="Ещё 10"]');
if (moreButton && maxCount > count)
{
moreButton.click();
console.log('loading more...');
count++;
}
else
{
window.clearInterval(interval);
resolve();
}
}, 1000, resolve);
});
}
waitForScroll().then(function() {
var canceled = 0;
var cancelFriends = document.querySelectorAll('div[aria-label="Удалить"]');
cancelFriends = Array.prototype.slice.call(cancelFriends).reverse();
console.log('Friends find:' + cancelFriends.length);
var clickInterval = window.setInterval(function() {
if (!cancelFriends.length){
window.clearInterval(clickInterval);
return;
}
var outgoing = cancelFriends.pop();
try {
if (!outgoing){
console.log('FINISH');
window.clearInterval(clickInterval);
return;
}
outgoing.click();
}catch(e) {console.log(e);}
}, canceledPause);
});
Я очень Вам @LiFeAiR благодарен за быстрый ответ, очень приятно что помогаете, но мне нужен вот этот код! Нужно в другой ветке скорее всего писать! Ссылка: https://gist.github.com/max-frai/ab672ecbd5dea7cd49af6d25599eb830
Remove outgoing facebook friend requests part 2.
var buttons = document.querySelectorAll('div[class="x1i10hfl xjbqb8w x6umtig x1b1mbwd xaqea5y xav7gou x1ypdohk xe8uvvx xdj266r x11i5rnm xat24cr x1mh8g0r xexx8yu x4uap5 x18d9i69 xkhd6sd x16tdsg8 x1hl2dhg xggy1nq x1o1ewxj x3x9cwd x1e5q0jg x13rtm0m x87ps6o x1lku1pv x1a2a7pz x9f619 x3nfvp2 xdt5ytf xl56j7k x1n2onr6 xh8yej3"]');
console.log('Number of elements found: ' + buttons.length);
var index = 0;
var interval = window.setInterval(function() {
if (index >= buttons.length) {
window.clearInterval(interval);
return;
}
buttons[index].click();
index++;
}, 1000);
better you would like write script like spambot :) for developing groups :)