page. $$和ElementHandle遍历

时间:2017-10-04 13:50:57

标签: puppeteer

阅读完文档和示例后,我仍然无法理解如何浏览ElementHandle的{​​{1}}响应。

想要使用page.$$和隐式page.$$的大多数用例是获取数组或NodeList,然后在其上工作。

假设我们有一个包含5个链接的页面,我想在我的脚本中打印第二个document.querySelectorAll()的href。这是我尝试过的,它不起作用。

a

你能帮忙吗?

1 个答案:

答案 0 :(得分:0)

我猜您实际上并不想要tempWrapper,因为ElementHandle代表一个DOM元素,您可以使用ElementHandle click启动focushoverawait page.goto('https://www.google.com/search?q=puppeteer') const LINKS_SELECTOR = 'a' const the2ndHref = await page.evaluate(selector => { const allLinks = document.querySelectorAll(selector) return allLinks[1].href }, LINKS_SELECTOR) console.log('the2ndHref', the2ndHref)

如果你想获得链接的href,你可以这样做:

-p