Я новичок в кукловодстве, и я пытаюсь понять, как он работает на некоторых примерах:
Итак, в основном, в этом примере я пытаюсь извлечь количество просмотровYouTube видео.Я написал строку js на консоли Chrome, которая позволяет мне извлечь эту информацию:
document.querySelector('#count > yt-view-count-renderer > span.view-count.style-scope.yt-view-count-renderer').innerText
Что сработало хорошо.Однако, когда я сделал то же самое с моим кодом кукловода, он не распознал элемент, который я запрашивал.
const puppeteer = require('puppeteer')
const getData = async () => {
const browser = await puppeteer.launch()
const page = await browser.newPage()
await page.goto('https://www.youtube.com/watch?v=T5GSLc-i5Xo')
await page.waitFor(1000)
const result = await page.evaluate(() => {
let views = document.querySelector('#count > yt-view-count-renderer > span.view-count.style-scope.yt-view-count-renderer').innerText
return {views}
})
browser.close()
return result
}
getData().then(value => {
console.log(value)
})
Я наконец сделал это, используя объект ytInitialData.Однако я хотел бы понять причину, по которой мой первый код не работал.
Спасибо