ERR_INVALID_AUTH_CREDENTIALS при использовании puppeteer

Есть код в файле index.js:

const { Client, LocalAuth } = require('whatsapp-web.js');
const qrcode = require('qrcode-terminal');

(async () => {
    console.log('Starting browser launch...');

    try {
        const client = new Client({
            puppeteer: {
                executablePath: '/usr/bin/google-chrome',
                headless: true,
                args: [
                    '--no-sandbox',
                    '--disable-setuid-sandbox',
                    '--disable-web-security',
                    '--ignore-certificate-errors',
                    '--disable-gpu',
                    '--disable-dev-shm-usage',
                    '--remote-debugging-port=9222',
                    '--disable-software-rasterizer'
                ],
                ignoreHTTPSErrors: true,
                dumpio: true
            },
            authStrategy: new LocalAuth({ clientId: 'exampleSession' }),
        });

        client.on('qr', (qr) => {
            console.log('QR Code received.');
            qrcode.generate(qr, { small: true });
        });

        client.on('error', (error) => {
            console.error('Client error:', error);
        });

        await client.initialize();
        console.log('WhatsApp client initialized.');

        await new Promise(resolve => setTimeout(resolve, 60000));
        await browser.close();
        console.log('Browser closed.');
    } catch (error) {
        console.error('An error occurred:', error);
    }
})();

При запуске на Ubuntu 22 командой:

xvfb-run -a -s "-screen 0 1024x768x24" node index.js

Всё работает как и должно работать, но при запуске этого же файла из python кода:

import threading
import subprocess

def start_node_script():
    global process

    command = ['xvfb-run', '-a', '-s', '-screen 0 1024x768x24', 'node', 'index.js']

    # Запуск процесса Node.js
    process = subprocess.Popen( 
        command,
        stdout=subprocess.PIPE,
        stderr=subprocess.PIPE,
        text=True,
        bufsize=1,
    )

    # Чтение вывода в отдельном потоке
    threading.Thread(target=read_process_output, args=(process,), daemon=True).start()

    log("Node.js script started", session="server")
    return jsonify({"message": "Node.js script started"})

Получаю ошибку:

An error occurred: Error: net::ERR_INVALID_AUTH_CREDENTIALS at https://web.whatsapp.com

С чем это может быть связано, куда смотреть и какие варианты решения проблемы?


Ответы (0 шт):