搜索谷歌';用Java实现本地化的web搜索
我正在尝试使用Java应用程序在不同的国家搜索Google,例如Google.co.uk、Google.de等。我发现与Java一起使用的Google Ajax API只允许您使用以下内容进行web搜索搜索谷歌';用Java实现本地化的web搜索,java,search,localized,Java,Search,Localized,我正在尝试使用Java应用程序在不同的国家搜索Google,例如Google.co.uk、Google.de等。我发现与Java一起使用的Google Ajax API只允许您使用以下内容进行web搜索 URL url = new URL("http://ajax.googleapis.com/ajax/services/search/web?v=1.0&" + "q=information%20retrieval&key=INSERT-YOUR-KEY&userip=U
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 */);
然而,这只是给了我google.com的结果。我需要每个国家的独立结果。是否有任何方法可以用Java实现这一点
谷歌有本地搜索,但这是基于谷歌地图,它使用经度和纬度,并提供商业搜索结果。我需要特定于每个国家的网页
有什么想法吗
我试图用以下内容来抓取google.co.uk的搜索结果:
但是返回的结果是一个空页。有人知道解决办法吗
谢谢
Sam根据URL查询,您可以在URL查询中设置“hl”参数。因此,对于UK结果,您将指定hl=en gb,您的代码如下所示:
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 */);
我在这里假设语言会影响结果,仅仅是因为这两个请求(en v fr)似乎会导致不同的结果: