Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java,启动chrome,设置用户代理,设置代理?_Java - Fatal编程技术网

Java,启动chrome,设置用户代理,设置代理?

Java,启动chrome,设置用户代理,设置代理?,java,Java,我如何在Java中做到这一点 我希望我的应用程序以编程方式: 1启动Chrome浏览器到URL我已经知道怎么做了 URI uri = new URI("http://www.example.com"); Desktop desktop = null; if (Desktop.isDesktopSupported()) { desktop = Desktop.getDesktop(); } if (desktop != null) { desktop.browse(uri);

我如何在Java中做到这一点

我希望我的应用程序以编程方式:

1启动Chrome浏览器到URL我已经知道怎么做了

URI uri = new URI("http://www.example.com");
Desktop desktop = null;
if (Desktop.isDesktopSupported()) {
    desktop = Desktop.getDesktop();
}
if (desktop != null) {
    desktop.browse(uri);
    System.out.print("worked");
}
2将用户代理设置为无法执行此操作

3设置代理。还有这个

4填写一些表格数据并完成一些其他功能

重复5次

我卡住了。 java应用程序可以这样做吗?起初我使用HtmlUnit加载网页,提交表单数据,并通过它完成一些操作,但某些Java脚本不会加载,而常规浏览器会加载,我需要这些功能

这是一个特定于OSX的应用程序

谢谢。

如果使用Desktop类,它将打开默认浏览器。如果更改默认浏览器,Desktop.browse将启动该浏览器而不是Chrome。如果你想要chrome,可以尝试一些不同的方法,比如运行外部程序

似乎您无法从命令行更改chrome的用户代理。您可以向chrome添加扩展来更改命令行,但必须使用用户界面。如果每次都需要更改用户代理,这将是一个问题

HtmlUnit对javascript的支持有限

您可以尝试找到一种在java中使用Webkit引擎的方法。它可以做你需要的一切