حذف جميع المتابعين التغريدات واللايكات من تويتر دفعة واحدة بدون برامج
ربما تريد تغيير نوع المواضيع أو المحتوى الذي ستبدأ بنشره من جديد على حسابك في تويتر، أو هناك أشياء ربما تعتقد أنه لم تستحق الاعجاب او إعادة التغريد منك. مهما كان السبب، فيمكنك حذف جميع المتابعين، التغريدات وتسجيلات الاعجاب من حسابك في تويتر.
لا تسنى متباعتنا على تويتر @3alemneup
ستحتاج لتغيير لغة عرض حسابك للانجليزية، بالإضافة إلى متصفح انترنت مثل جوجل كروم أو مايكروسوفت إدج.
حذف جميع المتابعين، التغريدات واللايكات دفعة واحدة
عملية الحذف تتم على المتصفح فقط، لست بحاجة لتثبيت أي برنامج أو التسجيل عبر انشاء حسابات كما يحدث في الكثير من المواقع التي نطلب منك الدفع لاحقا. عدد الايكات والتغريدات التي يمكنك حذفها غير محدود حتى لو كانت بالآلاف.
حذف جميع التغريدات
أولا، قم بنسخ الكود التالي للحافظة:
function scrollBottom(){ window.scrollTo(0, document.body.scrollHeight || document.documentElement.scrollHeight) }
function containsAndVisible(selector, text) {
return [].find.call(document.querySelectorAll(selector), function(element){
return RegExp(text).test(element.textContent) && (element.offsetWidth > 0 && element.offsetHeight > 0);
});
}
setInterval(function() {
var timeline = document.querySelector('div[aria-label^="Timeline: "] > div > div');
var tweet = timeline.querySelector('[data-testid="tweet"]');
if (tweet == null){
scrollBottom();
return;
}
var dropdown = tweet.querySelector('[data-testid="caret"]');
dropdown.click();
setTimeout(function() {
var remove = containsAndVisible("span", "Delete");
if (remove !== undefined) {
remove.click();
document.querySelector('[role="menu"]').remove();
tweet.remove();
return;
}
document.querySelector('[role="menu"]').remove();
var unlike = tweet.querySelector('div[data-testid="unlike"]');
if (unlike != null) {
unlike.click();
}
setTimeout(function() {
var unretweet = tweet.querySelector('div[data-testid="unretweet"]');
if (unretweet != null) {
unretweet.click();
containsAndVisible("span", "Undo Retweet").click();
}
tweet.remove();
}, 500);
}, 500);
}, 1500);
الكود الثاني لحذف التغريدات:
لا تنسى اضافة اسم حسابك على تويتر مكان @3alemneup
const yourTwitterHandle = "@3alemneup";
// one every 10 seconds to avoid Twitter noticing
const waitTimeSeconds = 10
const sleep = async (seconds) => new Promise(resolve => setTimeout(resolve, seconds * 1000));
const main = async () => {
while (true) {
await walkTweets();
await sleep(waitTimeSeconds)
}
}
const walkTweets = async () => {
let articles = document.getElementsByTagName('article');
for (article of articles) {
const spanElements = article.querySelectorAll('span');
for (spanElement of spanElements) {
// delete if it is a retweet
if (spanElement.textContent === "You Retweeted") {
article.scrollIntoView();
try {
const retweetElement = article.querySelector('[data-testid="unretweet"]');
if (retweetElement) {
retweetElement.click();
document.querySelector('[data-testid="unretweetConfirm"]').click();
}
} catch (e) {}
return
}
if (spanElement.textContent === yourTwitterHandle) {
// in this case it might be a tweet or a reply
article.scrollIntoView();
try {
// try to delete a reply
const tweetReplyElement = article.querySelectorAll('[aria-label="More"]')[1];
if (tweetReplyElement) {
tweetReplyElement.click()
Array.from(document.getElementsByTagName('*')).find(el => el.textContent.trim() === 'Delete').click()
document.querySelector('[data-testid="confirmationSheetConfirm"]').click();
return
}
} catch (e) {}
try {
// try to delete a tweet
const tweetElement = article.querySelector('[aria-label="More"]');
if (tweetElement) {
article.scrollIntoView();
tweetElement.click()
Array.from(document.getElementsByTagName('*')).find(el => el.textContent.trim() === 'Delete').click()
document.querySelector('[data-testid="confirmationSheetConfirm"]').click();
return
}
} catch (e) {}
}
}
}
}
main()
ثم اتبع الخطوات أسفله:
- فتح حسابك على المتصفح
اختر أي متصفح انترنت، سواءا جوجل كروم أو إدج، وقم بتسجيل الدخول لحسابك على تويتر.
2. افتح خانة التغريدات (أو المتابعين أو اللايكات)
يجب أن تكون نافذة التغريدات، أو إعادة التغريدات ظاهرة على الصفحة.
3. فتح أداة المطورين
في الركن الأيمن نحو الأعلى للمتصفح، انقر على … الثلاث نقط لإظهار القائمة
4. اضافة كود الحذف
في قائمة أداة المطورين، اختر Console وفي نهايتها أضف الكود المناسب.
5. زر الادخال
انقر على Enter من لوحة المفاتيح واترك الأداة تعمل
حذف اللايكات
لحذف اللايكات، قم بنفس العملية كما رأينا في التغريدات، هذه المرة باستعمال كود التالي:
function scrollBottom(){ window.scrollTo(0, document.body.scrollHeight || document.documentElement.scrollHeight) }
function containsAndVisible(selector, text) {
return [].find.call(document.querySelectorAll(selector), function(element){
return RegExp(text).test(element.textContent) && (element.offsetWidth > 0 && element.offsetHeight > 0);
});
}
setInterval(function() {
var timeline = document.querySelector('div[aria-label^="Timeline: "] > div > div');
var tweet = timeline.querySelector('[data-testid="tweet"]');
if (tweet == null){
scrollBottom();
return;
}
var unlike = tweet.querySelector('div[data-testid="unlike"]');
if (unlike != null) {
unlike.click();
}
setTimeout(function() {
var unretweet = tweet.querySelector('div[data-testid="unretweet"]');
if (unretweet != null) {
unretweet.click();
containsAndVisible("span", "Undo Retweet").click();
}
tweet.remove();
}, 500);
}, 1000);
حذف جميع المتابعين
هذا الكود لحذف كل المتابعين لديك دفعة واحدة:
(() => {
const $followButtons = '[data-testid$="-unfollow"]';
const $confirmButton = '[data-testid="confirmationSheetConfirm"]';
const retry = {
count: 0,
limit: 3,
};
const scrollToTheBottom = () => window.scrollTo(0, document.body.scrollHeight);
const retryLimitReached = () => retry.count === retry.limit;
const addNewRetry = () => retry.count++;
const sleep = ({ seconds }) =>
new Promise((proceed) => {
console.log(`WAITING FOR ${seconds} SECONDS...`);
setTimeout(proceed, seconds * 1000);
});
const unfollowAll = async (followButtons) => {
console.log(`UNFOLLOWING ${followButtons.length} USERS...`);
await Promise.all(
followButtons.map(async (followButton) => {
followButton && followButton.click();
await sleep({ seconds: 1 });
const confirmButton = document.querySelector($confirmButton);
confirmButton && confirmButton.click();
})
);
};
const nextBatch = async () => {
scrollToTheBottom();
await sleep({ seconds: 1 });
const followButtons = Array.from(document.querySelectorAll($followButtons));
const followButtonsWereFound = followButtons.length > 0;
if (followButtonsWereFound) {
await unfollowAll(followButtons);
await sleep({ seconds: 2 });
return nextBatch();
} else {
addNewRetry();
}
if (retryLimitReached()) {
console.log(`NO ACCOUNTS FOUND, SO I THINK WE'RE DONE`);
console.log(`RELOAD PAGE AND RE-RUN SCRIPT IF ANY WERE MISSED`);
} else {
await sleep({ seconds: 2 });
return nextBatch();
}
};
nextBatch();
})();
إذا توقفت الأداة عن العمل، حدث الصفحة وأعد العملية. تويتر أحيانا يقوم بايقاف الولوج للتغريدات، انتظر بضع ساعات وجرب مجددا حتى تنتهي عملية الحذف بشكل كامل.
لكل سؤال أو إضافة، يرجى كتابة تعليقك في الخانة اسفله