Thủ thuật xóa group, loại bỏ thành viên đối với Group Facebook có lượng thành viên lớn
Thông tin:
Với
thao tác loại bỏ thành viên trong Group Facebook sẽ là rất đơn giản đối
với người quản trị Group. Tuy nhiên, bỗng một lúc nào đó, người quản
trị muốn Group biến mất hoàn toàn không một chút dấu vết, thì việc xóa
bỏ các thành viên là điều bắt buộc. Với một Group thành viên giới hạn
thì không có vấn đề gì to tát, nhưng với một Group có vài ngàn thành
viên thì không thể thực hiện thủ công được. Thủ thuật dưới đây giúp
người quản trị xóa nhanh thành viên trong Group nhanh nhất.
Bước 1 : Chạy trình duyệt Chrome; nếu chưa có thì tải tại
http://www.google.com/intl/vi/chrome/)
Bước 2 : Truy cập tới nhóm của bạn (https://www.facebook.com/groups/XXXX/members/
) . Sau
đó mở giao diện điều khiển javascript ( ctrl + shift + J trong chrome ) , dán
đoạn mã dưới đây, và gõ phím Enter .
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();
Tham khảo
code tại http://paste.ofcode.org/i5NkF4FiVSgQcaXLw7DHDg
Nó sẽ bắt đầu xóa tất cả các thành viên từng người một, bằng
cách thực hiện kịch bản trên nút nhấp chuột.
Thỉnh thoảng vẫn xảy ra lỗi khi thao tác cố xóa đi một thành
viên đã được xóa, hoặc không thể xóa, thì bạn nên thực hiện thao tác lại từ Bước
2.
Ngoài ra, khi Group có quá nhiều thành viên, thì việc xóa
thành viên sẽ mất rất nhiều thời gian. Để rút ngắn thời gian, bạn có thể chạy kịch
bản trên nhiều tab trên cùng một lúc. Chỉ
cần mở một tab mới, đi đến cùng một trang , thêm mã , nhưng trước khi vào làm
cho một sự thay đổi nhỏ . Trên
dòng số 31 trong sự thay đổi kịch bản này " deleteAll.doClick (1); "
, nếu bạn đặt '100 ' thay vì '1' nó sẽ bắt đầu với việc xóa thành viên số 100
trong nhóm thay vì xóa từ thành viên số 1. Vì
vậy, có một tab với một kịch bản bắt đầu xóa từ thành viên thứ 1 , tab khác sẽ
bắt đầu xóa từ thành viên thứ 100 , tab khác sẽ bắt đầu xóa từ thành viên thứ 200,
v.v và nó sẽ đi nhanh hơn nhiều. Tất
nhiên một khi các tab bắt đầu xóa từ thành viên số 1 đến thành viên thứ 100 và
thấy rằng thành viên đó đã bị xóa nó sẽ ngừng làm việc.
Bước 4: Ngồi nhâm nhi 1 ly cafe và thực hiện thao tác cuối cùng là xóa Group nếu bạn muốn!
Bài viết được tham khảo từ Sky Angel
Phan Tuấn Nam
Đăng nhận xét