小编Swa*_*ikK的帖子

如何在 Puppeteer 的 iframe 元素中选择元素

由于 ESPN 不提供 API,我尝试使用 Puppeteer 来抓取有关我的梦幻足球联赛的数据。但是,由于登录表单与 iframe 元素嵌套,我很难尝试使用 puppeteer 登录。

我去了http://www.espn.com/login并选择了 iframe。除了主要部分,我似乎无法选择 iframe 中的任何元素

    frame.$('.main')
Run Code Online (Sandbox Code Playgroud)

这是似乎通过登录表单获取 iframe 的代码。

    const browser = await puppeteer.launch({headless:false});
    const page = await browser.newPage();

    await page.goto('http://www.espn.com/login')
    await page.waitForSelector("iframe");

    const elementHandle = await page.$('div#disneyid-wrapper iframe');
    const frame = await elementHandle.contentFrame();
    await browser.close()
Run Code Online (Sandbox Code Playgroud)

我希望能够访问 iframe 元素中的用户名字段、密码字段和登录按钮。每当我尝试访问这些字段时,都会返回 null。

javascript iframe webautomation node.js puppeteer

10
推荐指数
2
解决办法
1万
查看次数

标签 统计

iframe ×1

javascript ×1

node.js ×1

puppeteer ×1

webautomation ×1