我正在使用Google Maps API获取公司的评论和评分。
步骤1:HTTP请求以获取参考ID。
$url = 'https://maps.googleapis.com/maps/api/place/textsearch/json?query='.<CompanyName>.'&sensor=true&key='.<apikey>;
在HTTP请求之后,我获得了业务的referenceId。
第2步:获取评论的HTTP请求。
$url = 'https://maps.googleapis.com/maps/api/place/details/json?reference='.<referenceId>.'&key='.<apiKey>
通过上述内容,我获得了“最有帮助的评论”和最多5条评论。
所以我希望获得所有评论或最新评论。我需要添加参数吗?
答案 0 :(得分:7)
如果您想获得所有评论,则需要使用Google我的商家API。
它是另一种不同的API,您应该向Google请求该地的财产。
https://developers.google.com/my-business/content/review-data#list_all_reviews
答案 1 :(得分:0)
目前,Google仅提供了五个结果,他们在文档中提到了这一结果。 如果你想获得自己的房产/地点或业务的评论,你可以去我的公司,但我认为他们已经关闭了一个。
编辑:如果您仍想获取所有评论,您可以使用HTML解析器并解析所有评论(我不知道Google的数据政策,但您绝对可以从网站上删除所有内容)
答案 2 :(得分:0)
使用该位置的place_id获取最后5条重新链接的其他简单方法(您可以在此处找到:https://developers.google.com/places/place-id)
$url = "https://maps.googleapis.com/maps/api/place/details/json?key=Yourkey&placeid=YourplaceID";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec ($ch);
$res = json_decode($result,true);
$reviews = $res['result']['reviews'];
答案 3 :(得分:0)
有像 SerpApi 这样的第三方解决方案,您可以使用它来获取任何地方的所有评论。这是一个免费试用的付费 API。
每页有 10 个结果。要实现分页,只需使用定义结果偏移量的 start
参数(例如,0
(默认)是结果的第一页,10
是结果的第二页,{{ 1}} 是结果的第 3 页,以此类推)
20
示例输出:
require 'path/to/google_search_results';
$query = [
"engine" => "google_maps_reviews",
"place_id" => "0x89c259a61c75684f:0x79d31adb123348d2",
"api_key" => "SECRET_API_KEY"
];
$search = new GoogleSearch();
$results = $search->json($query);
$reviews = $result->reviews;
您可以查看documentation了解更多详情。
免责声明:我在 SerpApi 工作。