# google durchsuchen mit URL.openStream()



## BillG (1. Feb 2005)

Hallo,

ich hab ne klasse die Webseiten läd, das macht sie auch wunderbar,
nur wenn ich google durchsuchen will bekomme ich ein 403 forbidden zurück.
Die Google Startseite bekomme ich auch ohne probleme.

In einem Forum meinte jemand mit URLConnection.addRequestProperty("User-Agent", "")
 (Verdammt, warum kann opera kein autovervollständigen  )
würde es funzen, allerdings müsste ich da einiges an Code umschreiben, was mir 
garnicht gelegen kommen würde. 
Was meint ihr, gibts ne möglichkeit entsprechendes mit URL anstatt URL connection zu
tun, oder muss ich mir extra ne neue Klasse für Google schreiben?? 
Währe für hilfe Dankbar....

 :autsch: 

 :bahnhof: 
GreeTz


----------



## meez (1. Feb 2005)

Schau dir zuerst mal die RFC zu HTTP an.


----------



## Bleiglanz (2. Feb 2005)

Wie willst du "Google" durchsuchen?

ansonsten:

Verwende ethereal (oder Firefox-Web-Developer-Plugin) und schau dir genau an, welchen Request ein Browser abschickt

=> setzt dann die entsprechenen Header manuell


----------



## BillG (2. Feb 2005)

Tach,

Danke erstmal für die Antworten.
Ich will google durchsuchen, indem ich direkt n Query schick und nicht
über die Startseite geh, wie in Opera oder Firefox eben.
Hab ne Klasse die dann die links aus der Seite extrahiert.
Das mit dem Headersetzen war genau meine Frage, wie ich das am 
besten mache, bin inzwischen drauf gekommen das ich wohl

```
URL url = new URL("http://www.google.de/search?q=test&num=10");
URLConnection connection = url.openConnection();
connection.addRequestProberty("User-Agent","Firefox oder so...");
connection.connect();
```
machen kann um das zu tun, allerdings wird erzeugt das eine
MalformedUrlException, was ich etwas komisch finde, da die 
URL ja im Konstruktor ohne Probleme akzeptiert wird.
Wird sie vielleicht in der gelieferten URLConnection nicht mit
geliefert??
Na werd mich nochmal über die Doku zur Klasse setzten wenn ich wieder zeit hab.
Und dann werd ich mal sehen was noch fehlt und was so MalFormed an meiner
URL is, wo sie doch bei einem direkten

```
URL url = new URL("http://www.google.de/search?q=test&num=10");
InputStream in = url.getInputStream();
```
direkt ne saubere 403 Forbidden Meldung zurückgibt und sonst alle Seiten läd.
Gruß


----------



## santaclause (7. Feb 2005)

Falls dus noch nich hast, schau mal hier.
http://www.google.com/apis/
Google stellt da nen Web-Service bereit.


----------



## niemand (7. Feb 2005)

Google Web APIs hat gesagt.:
			
		

> Size: 666K


Das ist zumindest böse!

sry for OT

cu


----------

