javascript - Puppeteer 无法在特定的输入字段中写入
问题描述
我尝试使用 Puppeteer 在搜索字段(输入)中写入,但程序结束时没有在该字段中写入任何内容。这里的代码:
const browser = await puppeteer.launch({
headless: false,
slowMo: 100, // slow down by 250ms
});
const page = await browser.newPage();
await page.goto('https://cb01.tattoo/');
await page.waitForSelector('.form-control.mb-2.mr-sm-2.mb-sm-0');
console.log('passed');
await page.type('.form-control.mb-2.mr-sm-2.mb-sm-0', 'hello');
//await page.$eval('.form-control.mb-2.mr-sm-2.mb-sm-0', el => el.value = 'hello');
console.log('end');
//await browser.close();
我也尝试使用注释代码,但它无论如何都不起作用。泰寻求帮助。
解决方案
输入元素在隐藏元素内。您需要先取消隐藏父元素:
const browser = await puppeteer.launch({
headless: false,
slowMo: 100, // slow down by 250ms
});
const page = await browser.newPage();
await page.goto('https://cb01.tattoo/');
await page.waitForSelector('.form-control.mb-2.mr-sm-2.mb-sm-0');
console.log('passed');
await page.$eval('.mobileShow', el => el.style.display = 'block'); // Unhide parent.
await page.type('.form-control.mb-2.mr-sm-2.mb-sm-0', 'hello');
console.log('end');
推荐阅读
- django - Django ManyToManyField 关联错误 - 'ManyToManyDescriptor' 对象没有属性 'add'
- python - Plotly:如何创建具有多色标签的时间序列变量的折线图?
- python - 如何在python中迭代随机范围并计算结果
- typescript - 打字稿:可以用任意类型实例化
- scrapy - Scrapy startproject PermissionError
- python - Datamax DLP 使用 python 在其他文本上方发送和打印图像
- javascript - 为什么来自 AJAX 请求的响应数据出错而不成功?
- java - 在 Micronaut 中使用 Consul 集中配置
- php - 将 SimpleXMLElement 更改为漂亮的打印
- java - 使用 Spring Boot 应用程序出现 RabbitMQ 集群节点故障