模拟打开网页 - Java

时间:2015-08-10 17:39:30

标签: java html web

我想模拟在java中打开网页,我知道我可以这样做,以便在我的计算机上的浏览器中实际打开页面,

String htmlFilePath = "path/to/html/file.html"; // path to your new file
File htmlFile = new File(htmlFilePath);

// open the default web browser for the HTML page
Desktop.getDesktop().browse(htmlFile.toURI());

// if a web browser is the default HTML handler, this might work too
Desktop.getDesktop().open(htmlFile);

但有没有办法模拟它,所以我实际上并没有在我的计算机上看到它打开,但它仍然像有人打开网页一样进行评估。

或者,如果那是不可能的,那么最简单的方法是在我的计算机上进行物理打开,然后有办法获得回调,以便我知道页面何时被加载?

由于

2 个答案:

答案 0 :(得分:2)

有几种方法可以模拟HTTP客户端(例如Web浏览器):

  1. 泽西岛(Java) - https://jersey.java.net/documentation/latest/client.html
  2. Apache HTTPClient(Java) - https://hc.apache.org/
  3. JMeter(Java) - 使用JMeter记录HTTP请求并将其重播为测试 - https://jmeter.apache.org/usermanual/jmeter_proxy_step_by_step.pdf
  4. Selenium(浏览器插件) - http://www.seleniumhq.org/
  5. CURL(命令行工具) - http://curl.haxx.se/
  6. 我建议您使用泽西岛。它是专为REST设计的工具。所以它甚至可以帮助服务器端开发。

    我知道您特别要求提供Java解决方案,但最后两个选项非常受欢迎。

答案 1 :(得分:0)

我这里有一个使用Selenium库的示例程序。

Launch Firefox and Wait until it is Closed

该程序有一个启动浏览器并打开网站的代码。它可以检测浏览器是否已完成加载网站。它还可以检测浏览器是否已关闭。