目前,我正在尝试以下操作:
const element = await page.$("#myElement");
const html = element.innerHTML;
我希望可以打印HTML,但是我却得到undefined
。
我在做什么错了?
答案 0 :(得分:3)
您可以使用page.evaluate()
来获取元素的innerHTML
:
innerHTML
或者,如果必须使用page.$()
,则可以使用elementHandle.getProperty()
和elementHandle.jsonValue()
的组合访问const inner_html = await ( await ( await page.$( '#myElement' ) ).getProperty( 'innerHTML' ) ).jsonValue();
console.log( inner_html );
:
{{1}}
答案 1 :(得分:0)
const html = await page.$eval("#myElement", e => e.innerHTML);
答案 2 :(得分:0)
您可以使用 page.$eval
访问 innerHTML
pf 指定的 DOM。
Snippet sing page.$eval
const myContent = await page.$eval('#myDiv', (e) => e.innerHTML);
console.log(myContent);
与 jest-puppeter
搭配使用效果很好。