【问题标题】:Pulling Amazon Rating Stars and Rating Count with Product Advertising API使用产品广告 API 提取亚马逊评级星和评级计数
【发布时间】:2016-08-03 03:40:36
【问题描述】:

我知道以前有人问过这个问题。我也知道可能有一种方法可以解决这个问题。我在这里所追求的与已经被问到的不同(我相信)。

我所追求的是能够在不违反亚马逊服务条款的情况下仅获得星星和给定产品的评论量。

我不想显示所有评论以及它们允许您使用的 iframe 内的内容。我可以显示 iframe,但我不需要显示那么多信息。所以说清楚,我只想要星星和评论数(平均客户评论和评论数)。

如果您想加倍努力并告诉我如何操作,我非常感谢您通过 PHP 了解如何操作!如果这违反了 TOS,那么这就是 Id 真正需要知道的全部内容。如果是的话,如果你能给我一个链接到它说它违反 TOS 的地方,我会很高兴的。

感谢您的任何帮助!它总是受到赞赏。

【问题讨论】:

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


    【解决方案1】:

    聚会迟到了。自 2020 年 9 月 21 日起,您可以通过调用亚马逊产品广告 API V5 的 GetItems 端点获取评分星数和评论数。输入您要查找的 ASIN 并检查 CustomerReviews 资源。

    API result

    请注意亚马逊会不时更改他们希望通过 API 公开的数据点。它们可能在未来的某一天无法使用。

    [2021 年 9 月更新] 我意识到一些外国市场可能没有通过 API 返回的评分和评论。截至目前,数据可在美国和加拿大市场获得。但它在英国不可用。

    【讨论】:

    • CustomerReviews 出现在什么资源下?是在优惠吗?项目信息?
    • 仅供参考,您需要添加的实际资源是“"CustomerReviews.Count", "CustomerReviews.StarRating""
    • 它作为暂存器上的资源存在但不再工作,有人知道为什么吗?
    【解决方案2】:

    我不知道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
    ?>
    

    我真的试过了,它对我有用。

    【讨论】:

    • 显示Fatal error: Call to a member function find() on a non-object我已经下载了simple_html_dom
    • @fool 我再次测试,我仍然得到了星星和评级...检查您是否包含simple_html_dom 和所需的功能可用性,例如file_get_contents。我只在 amazon.com 页面上测试了这个脚本,它只在标题附近声明评论和星数的页面上工作。编辑:刚刚在 amazon.it 上试过,效果也不错。
    • 我认为这不是拉 AWS 平均星级评分的合法方式,因为他们没有为此提供任何响应组或元素,仅提供 iframe url
    • 我已经尝试过多次抓取这类东西,最终在几次调用之后,您将开始收到来自亚马逊的预设回复,说您应该使用他们的 API 来获取数据 - 他们当然会这样做不提供用于在产品广告 API 之外获取评论的端点,并且您必须注册一个帐户,如果您不向亚马逊推荐这么多符合条件的购买,该帐户最终将被关闭(这是产品广告 API 的重点)。
    【解决方案3】:

    PAPI 无法做到这一点。您要么需要自己抓取它,要么使用其他第三方 API。我们使用来自 RapidAPI 的 amazon-price API,它支持在单个请求中获取多达 1000 个产品的价格/评级/评论计数。

    【讨论】:

      猜你喜欢
      • 2012-01-31
      • 1970-01-01
      • 1970-01-01
      • 2012-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-29
      相关资源
      最近更新 更多