这很直截了当。我有一个包含href值的String。我想在页面上找到包含该特定href的web元素。我正在使用:
String href = "http://www.bing.com/images?FORM=Z9LH";
driver.findElement(By.cssSelector("a[href*='" + href + "']")).click()
如果您检查www.bing.com,您可以看到左上方的第一个链接“图像”具有我在此处设置的href值。 当我跑步时,它表示页面上没有这样的元素。我觉得我没有使用正确的“查找依据”选项。
答案 0 :(得分:0)
这应该适合你:
driver.findElement(By.cssSelector("li#scpt0>a")).click();
答案 1 :(得分:0)
据我所知,我的链接显示为:
href="/?scope=images&FORM=Z9LH1"
因此,您可以尝试更改href
变量的值。 (如果您使用chrome查看源代码,请注意您在F12控制台中看到的内容以及您使用Ctrl+U
看到的内容是不同的。Ctrl+U
通常是wha web解析器看到的,在执行任何JS或制作子查询之前)
此外,请注意搜索引擎(google,bing ...)通常不喜欢被解析,他们会尽其所能让你的工作变得不可能:使用JS,iframe,改变模式... < / p>