使用产品广告API提取亚马逊评级星和评级数

时间:2016-08-03 03:40:37

标签: php amazon-web-services amazon-product-api

我知道以前曾经问过这个问题。我也明白有可能有办法解决这个问题。我在这里所追求的与已经提出的(我相信)不同。

我所追求的是能够在不破坏亚马逊服务条款的情况下,仅仅为星级提供星级,以及给定产品的评论数量。

我不想显示所有评论以及iframe允许您使用的内容。我能够显示iframe,但我不需要显示那么多信息。所以要明确一点,我只想要明星和评论#(平均客户评论和评论数量)。

如果你想加倍努力并告诉我如何,我真的很感激知道如何通过PHP!如果这是针对服务条款的话,那就是我真正需要知道的。如果是的话,我会喜欢它,如果你能给我一个链接,说明它与TOS有关。

感谢您的帮助!总是很感激。

3 个答案:

答案 0 :(得分:1)

我不知道TOS,但要在php中这样做,如果没有官方api,你可以使用simple_html_dom:http://simplehtmldom.sourceforge.net/

<?php
define('MAX_FILE_SIZE', 6000000); 
include './simple_html_dom.php';

//Your product amazon's url
$url = 'https://www.amazon.com/SOL-REPUBLIC-1112-31-Headphones-1-Button/dp/B00COOVLMQ/ref=sr_1_1?s=fiona-hardware&ie=UTF8&qid=1470197678&sr=8-1&keywords=sol+republic';

$html = file_get_html($url);
$review_section = $html->find('#averageCustomerReviews',0);
$stars = $review_section->find('#reviewStarsLinkedCustomerReviews',0)->plaintext;
preg_match('/\d+\.{0,1}\d*/',$stars,$match);
echo "Stars: ".$match[0]; //Shoud be stars
echo "<br />";
$reviews = $review_section->find('#acrCustomerReviewText',0)->plaintext;
preg_match('/\d+/',$reviews,$match);
echo "Reviews: ".$match[0] //Shoud be reviews number
?>

我实际上尝试过,它适用于我。

答案 1 :(得分:1)

晚聚会。自2020年9月21日起,您可以通过调用Amazon Product Advertising API V5的 GetItems 端点来获得星级和评论数。输入您要查找的ASIN并检查 CustomerReviews 资源。

API result

请注意,Amazon会不时更改其希望通过API公开的数据点。它们可能在将来的某一天不可用。

答案 2 :(得分:0)

无法通过PAPI执行。您要么需要自己抓取它,要么使用其他第三方API。我们使用RapidAPI的amazon-price API,它支持在单个请求中提取多达1000个产品的价格/评分/评论计数。