2009-12-08 84 views
0

我正在编写一个Java程序,并且我想要一个函数,如果给定一个字符串,则返回由该查询返回的搜索形成的Google匹配数。我怎样才能做到这一点? (奖励积分为相同的回答,但用必应代替。)来自Java的Google Query?

例如,googleHits("Has anyone really been far even as decided to use even go want to do look more like?")将返回131,000,000。 (或无论有多少)。

相关:如何以编程方式访问“您的意思”建议? (例如,搜索 “德circuz” 回报 “?你的意思马戏团”)

发现:http://code.google.com/apis/ajaxsearch/documentation/#fonje

+0

133,000,000点击,实际上。 – TwentyMiles 2009-12-08 00:54:16

+3

谷歌不喜欢通过任何浏览器访问。我记得甚至从我使用的谷歌没有认识到的古老的文本模式网页浏览器接收到一个自动生成的响应。 – 2009-12-08 01:07:05

回答

-2

你可以合法地访问谷歌AJAX通过RESTful接口供稿API: http://code.google.com/apis/ajaxfeeds/documentation/#fonje

兵仍然有一个开发人员计划,您可以在一个JSON/XML或SOAP此事致电对他们的API : http://www.bing.com/developers

+0

-1 - 因为我认为这是非常危险的建议...即使OP准备承担风险。 – 2009-12-08 21:31:51

+0

为什么这个危险的建议?这两个网址都提到他们允许您以这种方式使用Feed。这并不是说它不鼓励(或者在Bing的情况下,它甚至被鼓励) – enderminh 2009-12-08 23:47:51

5

谷歌服务条款中这样说:

5.3您同意不访问(或试图访问)以任何方式任何服务 除非通过Google提供的 接口,除非您已经特别允许在与Google签订的单独 协议中这样做,否则不会通过 接口提供的Google 。 您 明确同意不访问(或 试图获得)任何服务 通过任何自动方式(包括 使用脚本或网络爬虫)和 应确保您遵守载于任何 说明robots.txt 文件出现在服务上。

谷歌已经使生活不愉快对你的方式/你的公司,如果你违反了服务条款...

UPDATE:第二句话是关于您使用方式Google的服务......包括他们发布的API。从措辞来看,什么是可以允许的以及禁止什么是不完全清楚的;从字面上讲,“任何自动化手段”都非常广泛。然而,一个执行谷歌搜索的Java应用程序,屏蔽了结果并重新打包它们以提供一些增值服务,将会(IMO)违反TOS。并且使用Google发布的API来做同样的事情(IMO)也是违规行为。

但这是我的意见,而不是谷歌的。谷歌的意见很重要。如果有人正在考虑这样做,他们应该联系Google,并检查他们提出的建议是否正确。

问题是,谷歌是而不是去帮助人们颠覆他们的搜索业务模式。任何人认为他们可以基于对服务条款的巧妙解释而摆脱困境,将会被烧毁。

+0

它通过他们发布的API ...我敢肯定,使用他们的API并不违反TOS。 – 2009-12-08 02:01:23

0

您可以使用Google Java Client Library“合法”执行此操作。我不确定,但他们可能有一些类似于你所寻找的方法,并且你不会违反他们的TOS。

Google Data APIs Library

+0

如果我错了,请纠正我的错误,但我认为Google Data API无法以任何方式连接到搜索服务。 – 2009-12-08 02:06:46