MessageChannel не определен, запускается на страницах с reCaptcha v2 - PullRequest
1 голос
/ 16 марта 2020

В настоящее время я пытаюсь очистить некоторые сайты, на которых реализовано recaptcha, но всякий раз, когда я загружаю исходный код страницы, я получаю эту ошибку: (node:15536) UnhandledPromiseRejectionWarning: ReferenceError: MessageChannel is not defined.

Я пытался внедрить исправление здесь: https://github.com/jsdom/jsdom/issues/2448#issuecomment -536242756 , но все равно выдает ошибку.

Вот мой код:

const jsdom = require('jsdom');
const request = require('request');

const { JSDOM } = jsdom;

const url = 'https://www.google.com/recaptcha/api2/demo';

function getPage() {
    return new Promise(function(resolve, reject) {
    request.get(url, function(error, response, body) {
        if (error) {
            reject(error);
        }
        else {
            resolve(body);
        }
    }
    });
}

(async() => {
    const dom = new JSDOM(await getPage(), {
        url,
        contentType: 'text/html',
        runScripts: 'dangerously',
        resources: 'usable',
        pretendToBeVisual: true,
        beforeParse(window) {
            window.MessageChannel = require('worker_threads').MessageChannel;
        }
    });
})();

Заранее спасибо,

iLinked

...