【发布时间】:2020-03-20 20:28:24
【问题描述】:
我的代码中有以下元素:
<div class="MuiButtonBase-root MuiListItem-root MuiListItem-gutters MuiListItem-button" tabindex="0" role="button" aria-disabled="false" id="1"><div class="MuiListItemText-root"><span class="MuiTypography-root MuiListItemText-primary MuiTypography-body1">Arne Nordman (arne@nordman.no)</span></div><span class="MuiTouchRipple-root"></span></div>
此元素是在文本字段中键入后出现的下拉列表的一部分。不幸的是,当我使用以下代码时,无法识别元素。它说“DOMException:无法在'Document'上执行'querySelector':'#1'不是有效的选择器”。
这是我的代码:
const puppeteer = require("puppeteer");
async function run() {
const browser = await puppeteer.launch({ headless: false });
const page = await browser.newPage();
await page.goto("http://localhost:3000/");
await page.evaluate(() =>
[...document.querySelectorAll("button")].map(
elem => elem.innerText === "Personell & Institutions" && elem.click()
)
);
await page.type("input", "arne");
await page.waitFor(1000);
await page.$eval("#1", el => console.log("elemnet is:", el.innerText));
}
run();
任何帮助将不胜感激!
【问题讨论】:
-
那么,您的问题是什么?
#1显然不是一个有效的选择器。选择其他 ID。
标签: javascript dom puppeteer