我需要提供一个像“蓝色金属水壶”这样的关键字。 (带/不带引号)并且只获得为此搜索找到的结果数。如果我现在没有引号搜索,我得到:

 Results 1 - 10 of about 1,040,000 for blue metal kettle. (0.19 seconds)

这里'1,040,000'是我想要的数字。是否有任何API函数可以执行此操作,或者我必须通过HTML提取此数字?最好的方法是什么?

有帮助吗?

解决方案

在Google Ajax API中,JSON中有一个estimatedResultsCount属性,但您可以阅读在问题跟踪器上提交的未解决的投诉:

  

结果计数不同
   http://code.google.com/p/谷歌的Ajax的API /问题/细节?ID = 32个

(我看到问题被标记为PHP,但客户端javascript可能会引起关注。)

其他提示

你可以屏幕刮掉它。类似的东西:

$keywords = "blue metal kettle";
$html = file_get_contents("http://www.google.com/?q=" . rawurlencode($keywords));
preg_match('/Results 1 - \d+ of about ([0-9,]+) for/', $html, $reg);
var_dump($reg[1]);

如果您在某个应用程序中使用此功能,则可能违反了Google的使用条款。

很久以前,Google关闭了他们的API以供公众使用。如果您想使用支持的API,请查看bing api,它将结果作为其中的一部分提供。另外,你要抓取HTML。请注意,您已显示我们/英文数字的格式。格式会因其他Google网站和/或您的个人资料设置和/或浏览器设置而异。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top