谷歌Web搜索API已弃用,由自定义搜索API取代(参见http://code.google.com/apis/websearch/)。
我想搜索整个网络,但看起来有了新的API,只有自定义网站可以搜索。
有没有一种方法可以通过编程的方式搜索整个网络?我可以从Java程序中使用JSON查询旧的API。
谷歌Web搜索API已弃用,由自定义搜索API取代(参见http://code.google.com/apis/websearch/)。
我想搜索整个网络,但看起来有了新的API,只有自定义网站可以搜索。
有没有一种方法可以通过编程的方式搜索整个网络?我可以从Java程序中使用JSON查询旧的API。
当前回答
你可以像浏览器一样发送它们,然后解析html,这是我一直在做的,即使是像Youtube这样的网站。
其他回答
在自定义搜索控制面板的底部有一个选项:“要搜索的网站”,你可以选择“搜索整个网络,但强调包含的网站”
我刚从《普通爬行》上看到这个。
http://www.commoncrawl.org/
也许这就是我们都在寻找的答案!!
Gigablast提供了一个廉价的网络搜索API: http://www.gigablast.com/searchfeed.html
谷歌自定义搜索(正如在排名靠前的答案中所提倡的那样)工作得很好,但与它的竞争对手(下图)或其他谷歌API相比,它非常昂贵。它有一个小的免费层(每天100次查询),每1000次查询的价格非常高,为5美元。
他们提供了升级到网站搜索的选项,价格稍微好一点,但这意味着搜索一个网站(你自己的),所以这真的是很不同的东西——不是升级。
主要的替代方案似乎是:
必应搜索API https://datamarket.azure.com/dataset/5BA839F1-12CE-4CCE-BF57-A49D98D29A44 它有每月5000q的免费层,价格从每美分5个查询开始,没有硬性限制。
更新:在2016年底,这个API被关闭,取而代之的是它的Azure对应的“认知服务必应搜索API”: https://azure.microsoft.com/en-us/services/cognitive-services/search/
请参见这里的定价图表,1000笔交易的起价为3美元/米。除非我遗漏了什么东西,这是相当昂贵的。
雅虎老板搜索API 更新:于2016年3月31日停产。 http://developer.yahoo.com/boss/search/ 全网搜索的价格从12次查询/便士开始。
还有一些我以前没听说过:
http://www.gigablast.com/searchfeed.html
http://www.faroo.com/hp/api/api.html
http://www.commoncrawl.org/
http://www.entireweb.com/search_api/implementation/ [已停止-如下所述]
在这篇SO文章中有一些关于这些的讨论。 [因为跑题被关闭,现在走了]
有一个叫做JFreeWebSearch的免费Java API,它使用了前面提到的Faroo: http://www.ke.tu-darmstadt.de/resources/jfreewebsearch