Skip to content

Instantly share code, notes, and snippets.

@babrath
Forked from adriaanm/fb_delete_allgroupmembers.js
Last active December 18, 2015 07:00
Show Gist options
  • Star 9 You must be signed in to star a gist
  • Fork 7 You must be signed in to fork a gist
  • Save babrath/5743753 to your computer and use it in GitHub Desktop.
Save babrath/5743753 to your computer and use it in GitHub Desktop.
Some javascript code that allows you to automatically delete all members from a facebook group.
// first go to https://www.facebook.com/groups/XXXX/members/
// then paste this in the javascript console
deleteAll = [];
deleteAll.elms = [];
deleteAll.canClick = function (el) {
return (typeof el != 'undefined') && (typeof el.click != 'undefined');
}
deleteAll.load = function() {
deleteAll.elms = document.getElementsByClassName("uiPopoverButton _p uiButton uiButtonSuppressed uiButtonNoText");
if (i < deleteAll.elms.length - 5 && !more[0].hasChildNodes()) {
setTimeout(deleteAll.getMore, 1000);
} else {
setTimeout(deleteAll.go, 2000);
}
}
deleteAll.getMore = function() {
more = document.getElementsByClassName("pam uiBoxLightblue uiMorePagerPrimary");
if (typeof more != 'undefined' && deleteAll.canClick(more[0])) {
more[0].click();
setTimeout(deleteAll.load, 2000);
} else {
setTimeout(deleteAll.load, 100);
}
}
deleteAll.go = function() {
try {
deleteAll.doClick(1);
} catch(e) {
setTimeout(deleteAll.load, 1000);
} finally {
setTimeout(deleteAll.load, 500000);
}
}
deleteAll.doClick = function(i) {
deleteAll.elms[i].click();
setTimeout(function(){deleteAll.doClick2(i)}, 1000);
}
deleteAll.doClick2 = function(i) {
document.getElementsByClassName("_54nc")[1].click()
setTimeout(function(){deleteAll.confirm(i)}, 1000);
}
deleteAll.confirm = function (i) {
remove_but = document.getElementsByClassName("_42ft _42fu layerConfirm uiOverlayButton selected _42g- _42gy")[0];
more = document.getElementsByClassName("pam uiBoxLightblue uiMorePagerPrimary");
if ((i < deleteAll.elms.length - 5 || !more[0].hasChildNodes()) && deleteAll.canClick(remove_but) && remove_but.value == "1") {
remove_but.click();
setTimeout(function(){deleteAll.confirm2(i)}, 1000);
} else {
setTimeout(deleteAll.getMore, 2000);
}
}
deleteAll.confirm2 = function(i) {
node = document.getElementsByClassName('uiContextualLayerPositioner uiLayer hidden_elem')[0];
node.parentNode.removeChild(node);
setTimeout(function(){deleteAll.doClick(i)}, 1000);
}
deleteAll.load();
@ursaltydog
Copy link

Babrath, can this script be tailored to dump out the blocked list? I need to clean it out as it's over 9k, and we can't tell if a member is messing with the current membership by deleting them, or blocking them indiscriminately.

@melissatt
Copy link

how do you run this on Mac Chrome?? Please help I need to delete two groups ASAP

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment