javascript - Webdriver:Google 快讯选项的自动化

标签 javascript java selenium selenium-webdriver webdriver

以下是 Google 快讯中的选项图片:

enter image description here

我正在尝试自动化这些下拉菜单,但不能。尝试过:

((JavascriptExecutor) driver).executeScript("document.getElementById(':3').innerHTML = 'As-it-happens';");

但当单击创建警报时,它仍然接受旧选择。

还尝试了 webdriver 中 Select 的下拉菜单,但不能,因为它是 div,而不是 select

如何让它选择我需要的正确选项?请访问这里:https://www.google.com/alerts#

此步骤有效,但无法从列表中选择:

WebElement howOften = driver.findElement(By.cssSelector("#create-alert-options > table > tbody > tr:nth-child(1) > td:nth-child(2) > div"));
howOften.click();

最佳答案

“As-it-happens”选择的 ID 实际上是“:0”:

WebElement as_it_happens = driver.findElement(By.id(":0"));
as_it_happens.click(); //make sure it's visible first

如果您还想选择其他选项,可以查看其页面源代码 (Ctrl+U),然后搜索 (Ctrl+F) 选项的文本。

关于javascript - Webdriver:Google 快讯选项的自动化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42987577/

相关文章:

java - 修复 Java 中动画 gif 的帧速率

java - 如何将listview中的textview传回php

python - 用 selenium 打开的 Chrome 页面仍然空白

javascript - 使用 redux 进行 react native 设置状态

javascript - 如何使用 javascript 连接到 Office 365 Outlook 日历

javascript - 禁用时如何设置表单(可选下拉框)的样式? ( react 引导)

java - 从 quartz 作业读/写数据库 - 事务不起作用

javascript - 关于 Javascript 中的异步和 Promise

ruby-on-rails - 如何在带有 Selenium 的 Capybara 中使用 ruby​​-debug

javascript - Browser.wait() 直到 .getAttribute() 返回 true