selenium - Indiatimes 网站的标题打印失败
问题描述
我正在尝试在网站“https://timesofindia.indiatimes.com/us”中打印标题“印度时报”,但它失败了..我认为问题是弹出通知要求输入.. .我试过警报,但这没有帮助......有人可以帮我修复下面的代码..
public static void main(String[] args) {
// TODO Auto-generated method stub
WebDriver driver = utils.HelperFunctions2.createAppropriateDriver("Chrome");
driver.get("https://timesofindia.indiatimes.com/");
System.out.println("****Main page loaded*****");
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.alertIsPresent());
Alert alert = driver.switchTo().alert();
alert.accept();
String header = driver.findElement(By.xpath("//*[@id=\"header-masthead\"]/div/a/img")).getText();
System.out.println(header);
}
解决方案
这是因为“印度时报”是图片,而不是纯文本!Webdriver 无法将图像解释为文本。
在这种情况下,您可以做的是检查属性 "src"
:
String titlePicture = driver.findElement(By.xpath("//*[@id=\"header-masthead\"]/div/a/img")).getAttribute("src");
应该等于https://static.toiimg.com/photo/77144633.cms
——《印度时报》图片来源
推荐阅读
- javascript - 如何异步返回angularjs范围函数
- html - CSS Grid 图像没有填满整个容器
- scipy - 为什么 expon() 的 Scipy 实例返回类型:
- go - crypto/cipher-XORKeyStream 对 src []byte 做了什么?
- android - Kotlin - 无法初始化伴随对象值
- javascript - 从firestore获取数据并放入Ionic中的数组
- angular - 语法错误:JSON.parse 中位置 0 的 JSON 中的意外标记 <
) 在 XMLHttpRequest.onLoad - php - 如何模拟不同的模型来检索多态关系?
- sql-server - 我已在笔记本电脑上安装 SQL Server 和 Managment Studio,但服务器名称已消失
- gnuplot - gnuplot 超文本在 svg 终端上不起作用