簡體   English   中英

Javascript - Puppeteer 變量實際上並未填充數據

[英]Javascript - Puppeteer variable not actually being filled with data

我正在制作一個測試不和諧機器人,作為對來自 c++ 的 JS 的快速介紹,但我在使用 puppeteer 時遇到了困難。 我讓它去網站,但我無法讓它讀取文本和/或將其放入變量中。 打印的所有內容都是“空”。

const Discord = require('discord.js');
const puppeteer = require('puppeteer');

const bot = new Discord.Client();


const token = '********************************************************';
const PREFIX = '!';

bot.on('ready', () =>{
    console.log('Successfully Logged In');
})

bot.on('message', async msg=>{

    let args = msg.content.substring(PREFIX.length).split(" ");

    switch(args[0]){
        case 'hello':
            msg.reply('Hello Friend!');
            break;

        case 'stats':
            let browser = await puppeteer.launch({headless: false});
            let page = await browser.newPage();
            await page.goto('https://r6.tracker.network/profile/pc/' + args[1], {waitUntil: 'networkidle0'});
            console.log(page.url());

            var level = await page.$('trn-defstat__value');
            //let wins =
            //let losses =
            //let winPercent =
            //let kills =
            //let deaths =
            //let kd =
            //let headshots =

            await page.waitFor(1000);

            await msg.reply('```Player:   ' + args[1] + '\n' + 'Level:   ' + level + '```');

            break;

        case 'args1debug':
            msg.reply(args[1]);
            msg.reply("debugControl");
            break;


    }
})


bot.login(token);

我認為選擇器不好。 沒有名為“trn-defstat__value”的元素。

這是您的選擇器的列表: css 選擇器

也許你需要選擇一個元素,然后從這個元素中獲取一個屬性。 那么你應該嘗試 _element.getAttribute(): getAttribute()

我強烈建議將完整的 page.evaluate() 函數與 console.log() 結合使用來調試您的問題。 請記住,當您在評估函數中使用 console.log() 時,瀏覽器中的終端 (F12) 將顯示該消息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM