2

有没有什么好的服务可以告诉我一个单词出现的网页数量?

我需要这个来计算归一化谷歌距离。几年前有谷歌网络搜索 API,人们可以调用它并获取事件和搜索结果(我实际上并不需要)。

这个网络搜索 API 现在已经被谷歌自定义搜索 API 取代,但是这个服务的成本对于我的目的来说太高了。

必应搜索 API 和 Yahoo! BOSS Search API 也不是一个选项,因为它们最多只返回 50 个搜索结果,而不是对单词出现的估计。

已经在互联网上进行了相当多的搜索,但我无法找到任何能提供我想要的信息的东西。

感谢您的任何建议。

4

3 回答 3

0

首先你应该阅读:

http://searchengineland.com/why-google-cant-count-results-properly-53559

我会为您提供 blekko API 结果来执行此操作,但我认为整个技术无效,因为任何主要搜索引擎提供的计数都不准确。

于 2012-11-28T23:08:53.193 回答
0

我在 R 中使用 Rcurl

search_result_adress <- sprintf("http://www.google.com/search?q=%s",searched_expression) result_page_source_as_string <- getURL(search_result_adress,.opts = list(ssl.verifypeer = FALSE))[[1]]

然后你的结果位于“About”和“results”之间的字符串中,我对我的正则表达式技能感到羞耻,无法展示我自己的解决方案,但我相信你会弄清楚的:)。

页数确实不准确,但是您可以通过从搜索中删除一个无论如何都不存在的单词来获得更稳定的结果,因此谷歌会更加努力地搜索。我更倾向于相信那些。

搜索“字符”的示例

字符返回 290,000,000 个结果。

字符 -potato 返回 931,000,000

字符 -hincbhjvmzsslzlkjed 返回 1,780,000,000

character -zzzanjbedlkjzd 也返回 1,780,000,000,显示稳定

对于不太一般的查询,估计更好。

“谷歌让我感到沮丧”返回 3,920 个结果。

“谷歌让我感到沮丧”-土豆返回 2,870。

“谷歌让我感到沮丧”-hincbhjvmzsslzlkjed 返回 2,860。

于 2014-09-12T09:53:04.280 回答
0

(我知道晚了,但我只是在尝试解决同样的问题时才发现这个)

也许一个不错的替代品是谷歌的 Web1T 语料库。它绝对不适合您的用例,但总比没有好。特别是,由于语料库仅包含 5 克,因此f(x, y)计数只能从由最多三个其他单词分隔的单词中推导出来,这很可能意味着在许多情况下,当您期望更高从实际的谷歌结果中计算(假设存在这样的数字,正如格雷格的链接告诉我们的那样,它可能不存在)。另一个潜在的问题是它只包含截至 2006 年的数据(尽管您可能不关心),并且它只包含英语(尽管有 10 种欧洲语言的版本)也可用)。哦,它是 150 美元,这并不可耻,尽管这可能意味着您必须与会计部门打交道。

于 2013-02-24T07:22:33.933 回答