Google jest akurat bardzo wrażliwy na wszelkie zautomatyzowane zapytania. Sporo tego do niego leci, więc stara się wycinać, co tylko może.
W związku z tym musisz się chociaż trochę upodobnić do przeglądarki, aby zaczęło działać. Na start - dodaj "User agent":
Kopiuj
url = new URL("http://www.google.com/search?q=hello+world");
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setRequestProperty("User-agent", "Opera/9.80 (Windows NT 6.1; U; es-ES) Presto/2.9.181 Version/12.00");
is = connection.getInputStream();
dis = new DataInputStream(new BufferedInputStream(is));
while ((line = dis.readLine()) != null)
{
System.out.println(line);
}
System.out.println("xx");
Dalej możesz natknąć się na inne problemy. Choćby zbyt szybkie/częste odpytywanie także Ciebie zablokuje.
PS. readLine() z DataInputStream jest już oznaczone, jako deprecated. Porządniej będzie chyba skorzystać z BufferedReader.