import java.awt.*;
import java.io.IOException;
import java.net.URI;
import static java.awt.Desktop.isDesktopSupported;
/**
* @author Dongjie Wang
* @create 2023-12-04 08:44
* @Description:使用java代码打开关闭浏览器(指定的浏览器或者计算机默认的浏览器) 获取网页字节流内容信息,
*/
public class BrowseDesignatedWebPages {
public static final String[] urls = {
"url001",
"url002",
"url003",
};
/**
* @Description: 打开计算机默认的浏览器访问指定的url页面
* @date: 2023-12-04 08:45
*/
public static void openBrowse() {
for (String url : urls) {
if (isDesktopSupported()) {
try {
//创建一个URI实例,注意不是URL
URI uri = URI.create(url);
//获取当前系统桌面扩展
Desktop desktop = Desktop.getDesktop();
//判断系统桌面是否支持要执行的功能:OPEN,EDIT,PRINT,MAIL,BROWSE
if (desktop.isSupported(Desktop.Action.BROWSE)) {
//获取系统默认浏览器打开链接
desktop.browse(uri);
}
} catch (Exception e) {
}
}
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
/**
* @Description: 关闭浏览器(关闭指定的浏览器,在此处是强行关闭浏览器,强行杀死进程)
* @date: 2023-12-04 08:48
*/
public static void closeBrowse() {
try {
/**
* taskkill是用来终止进程的。
* 具体的命令规则如下:
* TASKKILL [/S system [/U username [/P [password]]]]
* /F 指定要强行终止的进程。
* /FI filter 指定筛选进或筛选出查询的的任务。
* /PID process id 指定要终止的进程的PID。
* /IM image name 指定要终止的进程的映像名称。通配符 '*'可用来指定所有映像名。
*/
//我的默认是Firefox浏览器 如果默认其他的浏览器在这里改即可
Runtime.getRuntime().exec("taskkill /F /IM Firefox.exe");
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws InterruptedException {
for (int i = 0; i < 10000; i++) {
openBrowse();
Thread.sleep(10000);
closeBrowse();
}
}
}
使用java代码打开关闭浏览器(指定的浏览器或者计算机默认的浏览器)
于 2023-12-04 09:07:58 首次发布