我正在尝试使用selenium将一个Google plus用户添加到我的圈子中。我已经能够找到添加到圆圈按钮并将其悬停,以便显示下拉列表。但是,在您悬停之前,包含我的圆圈的动态div容器不在dom树中。由于某些原因,selenium无法看到悬停后创建的动态框中的项目的xpath。有没有人知道为什么这不起作用?我尝试了很多不同的搜索,xpath方法,所以看起来div在当前的selenium浏览器对象中不存在。
下面的代码实际上是悬停在盒子里,但是从那里我无能为力。
hoverBox = browser.find_element_by_xpath('//*[@id="contentPane"]/div/div[2]/div/div/div[1]/div/div[3]/div[1]/div[2]/div/div[1]/div/div/div/div/span')
hover = ActionChains(browser).move_to_element(hoverBox)
hover.perform()
答案 0 :(得分:0)
import org.openqa.selenium.JavascriptExecutor;
导入上述内容。
public static String executeScript(WebDriver driver, String scriptToExecute)
{
JavascriptExecutor executor = (JavascriptExecutor) driver;
Object obj = executor.executeScript(scriptToExecute);
if(obj != null)
{
return obj.toString();
}
else
{
return "";
}
}
你可以传递类似于“$('。context_menu')的任何脚本.show()”