从 linkedin Sales Navigator 获取元数据

Get metadata from linkedin Sales Navigator

尝试使用 [code] 选择器从链接的 Sales Navigator 搜索中获取网络响应(仅元数据)。

我可以使用绝对路径获取此元素或文本 $x("/html/body/code[9]")[0].innerHTML 但我想更通用,以防这条路径被更改,包含文本 ex "metadata"

还有其他办法吗?

尽量做最简单的。

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) ) )