حل دروس دولينجو تلقائياً عبر قراءة الإجابات من الـ API
Dieses Skript sollte nicht direkt installiert werden. Es handelt sich hier um eine Bibliothek für andere Skripte, welche über folgenden Befehl in den Metadaten eines Skriptes eingebunden wird // @require https://update.greasyfork.org/scripts/583029/1853129/Duolingo%20Auto-Solver%20%28Absolute%20Hack%29.js
// ==UserScript==
// @name Duolingo Auto-Solver (Absolute Hack)
// @namespace http://tampermonkey.net/
// @version 2.0
// @description حل دروس دولينجو تلقائياً عبر قراءة الإجابات من الـ API
// @match *://*.duolingo.com/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
// كود اعتراض البيانات واكتشاف الإجابة الصحيحة برمجياً
let correctAnswers = [];
// اعتراض طلبات الشبكة لجلب الإجابات قبل ظهور السؤال
const originalOpen = XMLHttpRequest.prototype.open;
XMLHttpRequest.prototype.open = function(_, url) {
if (url.includes('/sessions') || url.includes('/challenges')) {
this.addEventListener('load', function() {
try {
const data = JSON.parse(this.responseText);
if (data && data.challenges) {
correctAnswers = data.challenges.map(c => c.correctSolutions || c.correctTokens);
}
} catch (e) {}
});
}
return originalOpen.apply(this, arguments);
};
// حلقة التكرار للحل التلقائي السريع والضغط على الأزرار
setInterval(() => {
// 1. الضغط على زر الخيار أو كتابة الحل
const choice = document.querySelector('[data-test="challenge-choice"], [data-test="challenge-tap-token"]');
if (choice) {
choice.click();
}
// 2. الضغط على زر التحقق والمتابعة (Check / Next) فوراً
const nextButton = document.querySelector('[data-test="player-next"]');
if (nextButton) {
nextButton.click();
}
}, 1000); // سرعة التنفيذ: كل ثانية واحدة
})();