2010-09-21 4 views
2

J'essaie d'utiliser une application Java pour rechercher Google dans différents pays, à savoir google.co.uk, google.de, etc. J'ai trouvé que l'API Google Ajax utilisée avec Java sera seulement laissez-vous faire la recherche Web avec le suivantRecherche dans la recherche Web localisée de Google avec Java

URL url = new URL("http://ajax.googleapis.com/ajax/services/search/web?v=1.0&" 
+ "q=information%20retrieval&key=INSERT-YOUR-KEY&userip=USERS-IP-ADDRESS"); 

URLConnection connection = url.openConnection(); 

connection.addRequestProperty("Referer", /* Enter the URL of your site here */); 

Cependant, cela me donne juste les résultats de google.com. J'ai besoin de résultats séparés pour chaque pays. Y at-il de toute façon à faire cela avec Java.

Google a une recherche locale, mais basée sur Google Maps. Elle utilise la longitude et la latitude et fournit des résultats de recherche d'entreprise. J'ai besoin de pages web spécifiques à chaque pays.

Toutes les idées ..

J'ai essayé de gratter le résultat de la recherche de google.co.uk ce qui suit:

http://www.google.co.uk/#hl=en&source=hp&q=information+retrieval&aq=f&aqi=g10&aql=&oq=&gs_rfai=CjqZ0vBeYTLfwMZz0ygTJ84WADgAAAKoEBU_Qz3dV&fp=44fc429e19c3a006

mais le résultat retourné est une page vide. Quelqu'un sait-il une solution de contournement?

grâce

Sam

Répondre

1

Selon le class reference vous pouvez définir un paramètre 'hl' dans la requête URL. Donc, pour le Royaume Uni résultats que vous spécifiez hl = fr-fr, et votre code ressemblera à ceci:

URL url = new URL("http://ajax.googleapis.com/ajax/services/search/web?v=1.0&" 
+ "hl=en-gb&q=information%20retrieval&key=INSERT-YOUR-KEY&userip=USERS-IP-ADDRESS"); 

URLConnection connection = url.openConnection(); 

connection.addRequestProperty("Referer", /* Enter the URL of your site here */); 

Je suppose ici que le langauge affecte les résultats, tout simplement parce que ces deux demandes (en v fr) apparaissent pour aboutir à des résultats différents:

Vous pouvez trouver un LST des codes de langue ici: http://msdn.microsoft.com/en-us/library/ms533052(v=vs.85).aspx