在下面编写的代码中,我想在编写的javascript中使用URL变量值,并将其存储在java的String URL变量中。
我尝试使用getParameter方法,但该方法在JSP中使用。那是我们在Selenium中不使用的高级Java。我试图在其他地方搜索它,但是到处都有通过JSP解释值提取的信息。请帮忙。有什么办法可以在脚本中使用该值?
System.setProperty("webdriver.chrome.driver","F:\\Browser Chrome Driver files\\chromedriver.exe");
WebDriver driver=new ChromeDriver();
//WebDriver driver1 = null;
JavascriptExecutor js = (JavascriptExecutor)driver;
js.executeScript("var url = prompt(\"URL\");");
String url = request.getParameter("url");
2nd attempt:
When I use this code,
System.setProperty("webdriver.chrome.driver","F:\\Browser Chrome Driver
files\\chromedriver.exe");
WebDriver driver=new ChromeDriver();
driver.manage().window().maximize();
//WebDriver driver1 = null;
JavascriptExecutor js = (JavascriptExecutor)driver;
//String script = ;
String url =(String)js.executeScript("var user = prompt(\"Enter your
name, please:\", \"https://staging.eye.guide/login\");\r\n" +
"if (user != null) {\r\n" +
" return user;\r\n" +
"}");
Thread.sleep(5000);
driver.get(url);
我在线程“ main”中获取异常java.lang.NullPointerException:条目中的null值:url = null。我希望驱动程序通过javascript提示访问URL。但是在第二次尝试时出现空指针异常。
答案 0 :(得分:0)
您可以在JavaScript中使用return
String script = "var url = prompt(\"URL\");"
+ "return url;";
String url = (String)js.executeScript(script);
答案 1 :(得分:0)
我自己找到了解决方案。我使用Java并成功。我导入了javax.swing.JOptionPane库并创建了JOptionPane类的对象。然后使用showInput对话框方法,并将该对话框中的值存储在变量中。奏效了。