无法获取div标签的innerHTML 参考

问题描述

我正试图从以下html中获取thooty smotty一词

<div class="server-name">
                            thottysmotty                        </div>
我尝试在控制台中运行以下查询-doucument.queryselectorall('。server-name')。innerHTML 但是我没有任何价值,只是正确的陈述。

解决方法

Document.querySelectorAll()返回元素列表,因此您必须遍历该列表

const elementList = document.querySelectorAll('.server-name');
for (const element of elementList) {
  console.log(element.innerHTML)
}
<div class="server-name">thottysmotty</div>


参考

Document.querySelectorAll() (语法>返回值)

,

在puppeter中,您可以使用page.$eval来检索innerHTML:

const innerHtml = await page.$eval('.server-name',el => el.innerHTML)

如果有更多具有相同类名的元素,请使用page.$$eval并遍历返回的元素数组:

const innerHtmlArray = await page.$$eval('.server-name',elements => elements.map(el => el.innerHTML))

在Chrome控制台上,您可以使用$('.server-name').innerHTML$$('.server-name')[i].innerHTML(对于第一个匹配元素i = 0)进行测试。