Duolingo Auto-Solver (Absolute Hack)

حل دروس دولينجو تلقائياً عبر قراءة الإجابات من الـ API

此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.greasyfork.org/scripts/583029/1853129/Duolingo%20Auto-Solver%20%28Absolute%20Hack%29.js

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

Advertisement:

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

Advertisement:

// ==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); // سرعة التنفيذ: كل ثانية واحدة
})();