Поиск в 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 для этого:
Вы получаете результаты поиска в формате JSON.