用于Prime视频是否可用视频的AWS API

时间:2013-06-16 09:30:42

标签: api amazon-web-services

我正试图找到一种方法来查看AWS API是否可以判断Prime影片上是否有电影。

基于AWS开发人员论坛上的帖子: https://forums.aws.amazon.com/thread.jspa?threadID=93283

似乎有一个Amazon Prime Instant Videos节点(2676882011) 但是,即使Prime上没有电影,尝试类似下面的内容也会返回结果:

http://webservices.amazon.com/onca/xml?Service=AWSECommerceService
&Version=2011-08-01
&Operation=ItemLookup
&ItemId=B000V1Z8KK
&BrowseNode=2676882011
&AssociateTag=xxxxxx

线程中的回复还表明它不可靠。

有没有办法检查Prime即时视频上的视频是否可用而无需刮取页面并查找文本模式?

2 个答案:

答案 0 :(得分:2)

首先,ItemLookup请求不支持BrowseNode属性。只有ItemSearch。不幸的是ItemLookup确实没有成功,但我认为,你可以使用ItemSearch请求实现你想要的目标。

尝试以下方法:

  1. 使用亚马逊电影片名。我假设你有权访问电影片名? (如果没有,您可以使用API​​快速请求。)
  2. 制作ItemSearchItemSearch支持明确搜索特定标题(或部分标题)的属性Title。您还可以使用属性BrowseNode使用已找到的浏览节点" Prime Instant Video" -node(2676882011)。这样,您只能在主即时视频节点中搜索具有特定标题的项目。
  3. 现在查看结果:如果它包含项目它是素数如果它不是它不是
  4. 实施例

    请求:

    http://ecs.amazonaws.com/onca/xml?Service=AWSECommerceService
    &Version=2013-08-01
    &AssociateTag=Foo
    &Operation=ItemSearch
    &SearchIndex=Video
    &BrowseNode=2676882011
    &Title=Fargo
    

    响应将包含一个项目:电影 Fargo [HD] 。这是因为它在Prime

    如果您将请求更改为:

    http://ecs.amazonaws.com/onca/xml?Service=AWSECommerceService
    &Version=2013-08-01
    &AssociateTag=Foo
    &Operation=ItemSearch
    &SearchIndex=Video
    &BrowseNode=2676882011
    &Title=Gone+Girl
    

    您将获得无项目。亚马逊即时视频中有 Gone Girl ,但不在Prime

答案 1 :(得分:0)

原来,亚马逊没有计划在他们的API中支持这个领域。确定Prime电影是否可用的最佳方法是抓取页面并解析它以查看它是否可用于Prime。

以下Xpath可行:

//div[@id='dv-side-box-container']//a[contains(@class, 'prime')]