Поиск в Google с помощью пользовательского поиска

Меня просят написать перевернутый индекс, поэтому я хотел бы начать с написания Java-программы, в которой Google ищет слово и помещает результаты в массив.

Вот мой код:

String search = "Dan";
String google = "http://www.google.com/cse/publicurl?cx=012216303403008813404:kcqyeryhhm8&q=" + search;
URL url = new URL(google);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Accept", "application/json");
BufferedReader reader = new BufferedReader(new InputStreamReader(
    (conn.getInputStream())));
// Gather the results to a String array
List<String> resultsList = new ArrayList<String>();
String r;
while ((r = reader.readLine()) != null)
    resultsList.add(r);
conn.disconnect();
System.out.println("Google Search for: " + search + " Is Done!");

Программы работают без сбоев в середине, но я получаю только исходный код страницы (которая не содержит ссылок).

Что мне нужно изменить в коде? Может быть, мне нужен совершенно другой метод?

1 ответ

Решение

Если вы хотите использовать поиск Google в своем приложении, вы должны использовать Google API для этого:

API пользовательского поиска

Вы получаете результаты поиска в формате JSON.

Другие вопросы по тегам