Mar*_*ary 3 javascript innerhtml node.js puppeteer
目前,我正在尝试以下操作:
const element = await page.$("#myElement");
const html = element.innerHTML;
Run Code Online (Sandbox Code Playgroud)
我期待打印 HTML,但我得到了undefined.
我究竟做错了什么?
您可以使用page.evaluate()来获取innerHTML元素的 :
const inner_html = await page.evaluate(() => document.querySelector('#myElement').innerHTML);
console.log(inner_html);
Run Code Online (Sandbox Code Playgroud)
另外,如果必须使用page.$(),您可以访问innerHTML的使用组合elementHandle.getProperty()和elementHandle.jsonValue():
const inner_html = await (await (await page.$('#myElement')).getProperty('innerHTML')).jsonValue();
console.log(inner_html);
Run Code Online (Sandbox Code Playgroud)