通过Java在Google上搜索字符串并提交

问题描述

我正在尝试制作一个程序,向Google提交搜索查询,然后使用结果打开浏览器。 我已经设法连接到Google,但由于不知道如何将搜索查询插入网址并提交,因此陷入困境。 我尝试使用HtmlUnit,但似乎不起作用。

这是到目前为止的代码

URL url = new URL("http://google.com");
HttpURLConnection hr = (HttpURLConnection) url.openConnection();
System.out.println(hr.getResponseCode());
String str = "search from java!";

解决方法

您可以使用Java.net包来浏览Internet。我使用了另一种方法来为Google创建搜索查询,以用%20代替URL地址来代替空格

public static void main(String[] args)  {
    URI uri= null;
    String googleUrl = "https://www.google.com/search?q=";
    String searchQuery = createQuery("search from Java!");
    String query = googleUrl + searchQuery;

    try {
        uri = new URI(query);
        Desktop.getDesktop().browse(uri);
    } catch (IOException | URISyntaxException e) {
        e.printStackTrace();
    }
}

private static String createQuery(String query) {
    query = query.replaceAll(" ","%20");
    return query;
}

使用的软件包是核心java:

import java.awt.Desktop;
import java.net.URI;
import java.net.URISyntaxException;