gpt4 book ai didi

php - 使用 GoogleAPI 返回 2 个不同查询的搜索结果数。 (PHP)

转载 作者:搜寻专家 更新时间:2023-10-31 22:10:19 25 4
gpt4 key购买 nike

我正在为我的荣誉项目做一个小实验。我想要实现的是根据 2 个 Google 搜索查询计算返回结果数量之间的相似度。当我有 2 个结果时,我希望将一个结果除以另一个结果以返回某种“比率”。

现在,使用 API 返回一个结果就足够容易了,我一直在使用这段代码:

$query="CinammonRolls";
$url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=$query";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$body = curl_exec($ch);
curl_close($ch);

$json = json_decode($body);

print 'The results for ' . $query . ' are: ' . $json->responseData->cursor->estimatedResultCount;

那段代码,返回结果很好。但是我对 PHP 比较陌生,所以下面的代码永远不会起作用;但我给了它一个打击。

$query="CinammonRolls";
$query2="CinammonRollsChinese";
$url = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=$query";
$url2 = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=$query2";

$ch = curl_init();

$ch2 = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch2, CURLOPT_URL, $url2);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 2);
$body = curl_exec($ch);
$body2 = curl_exec($ch2);
curl_close($ch);
curl_close($ch2);

$json = json_decode($body);
$json2 = json_decode($body2);
print 'The results for ' . $query . ' are: ' . $json->responseData->cursor->estimatedResultCount;

print 'The results for ' . $query2 . ' are: ' . $json2->responseData->cursor->estimatedResultCount;

这只是返回错误:

Notice: Undefined property: stdClass::$estimatedResultCount in C:\Program Files\EasyPHP-5.3.9\www\googleTest.php on line 24

所以我雇佣你们,有没有办法解决这个问题?会不会像在不同的函数中计算两个结果一样?我很难过。

感谢您的帮助。

最佳答案

我想你的意思是:

curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 2);

成为:

curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);

该选项将根据 bool 值的第三个参数打开和关闭,因此为 0 或 1。我认为当您复制并粘贴第二个查询的行并将 1 更改为 2 时,您不小心更改了 1 bool 值到 2(非 bool 值)。

“CinammonRollsChinese”不返回任何结果,因此没有估计的结果计数。您需要在使用它之前检查 $json2->responseData->cursor->estimatedResultCount 是否存在,因为不存在每个搜索字符串都会产生结果。

关于php - 使用 GoogleAPI 返回 2 个不同查询的搜索结果数。 (PHP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13647295/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com