尝试使用 [code] 选择器从链接的 Sales Navigator Search 中获取网络响应(仅元数据)。
我可以使用绝对路径来获取此元素或文本,$x("/html/body/code[9]")[0].innerHTML
但我希望更通用,以防此路径发生更改,包含文本前“元数据”
还有其他方法吗?
尝试使用 [code] 选择器从链接的 Sales Navigator Search 中获取网络响应(仅元数据)。
我可以使用绝对路径来获取此元素或文本,$x("/html/body/code[9]")[0].innerHTML
但我希望更通用,以防此路径发生更改,包含文本前“元数据”
还有其他方法吗?
尝试做一个最简单的。
const metadatas = await page.evaluate ( () => {
let metadatas = []
document.querySelectorAll('body > code[style="display: none"]').forEach(code => {
if ( code.innerText.search('{"metadata":"') > -1 && code.innerText.search('{"metadata":"') < 10 ) {
metadatas.push (code.innerText)
}
})
return (metadatas)
})
metadatas.forEach( metadata => console.log ( JSON.parse(metadata) ) )
如果您确定$("code")[8].innerHTML将包含元数据,您可以像这样编写代码。
const metadatas = await page.evaluate ( () => {
let metadatas = []
document.querySelectorAll('body > code[style="display: none"]:nth-of-type(9)').forEach(code => {
metadatas.push (code.innerText)
})
return (metadatas)
})
metadatas.forEach( metadata => console.log ( JSON.parse(metadata) ) )