使用Puppeteer按标题查找元素

时间:2019-03-18 10:36:10

标签: javascript puppeteer

假设我在iframe中有一个不带ID的链接,其中唯一可唯一识别的信息是此链接的元素标题,我将如何查找它?看起来可能像这样:

<a class="link spacer--double" href="#" tabindex="51" title="Click here to use new code">Use new code</a>

这是我到目前为止尝试过的:

(async() => {    
    const browser = await puppeteer.launch({
        headless: false
    });
    const page = await browser.newPage();    
    console.log("starting new page");
    var contentHtml = fs.readFileSync('1-iframe.html', 'utf8');
    await page.setContent(contentHtml);

    const result = await page.evaluate(() => {
        let elements = document.getElementById("framecontentscroll").innerText;
        for (let element of elements)
            console.log(element);
    })    
    })();

但是我似乎在elements中什么也没得到。 iframe的ID为“ framecontentscroll”。

是否可以使用标题和querySelector或类似名称直接访问链接元素?

1 个答案:

答案 0 :(得分:0)

您可以使用querySelector按标题进行选择。参见:

Select an element by title with JavaScript and tweak from the browser?