如何使用php访问Amazon api中超过10项的详细信息?
我正在使用亚马逊API,并使用在线来源的代码http://www.codediesel.com/php/accessing-amazon-product-advertising-api-in-php/。
当我使用amazon api进行搜索查询时,我想获得超过10个产品的详细信息。 我知道amazon api的政策是每次调用10个数据,但是有可能通过创建循环或其他东西来获得更多的数据吗?
当我提出请求时,我分配了以下参数
$parameters = array("Operation" => "ItemSearch",
"SearchIndex" => "Electronics",
"ResponseGroup" => "Images,ItemAttributes,EditorialReview,Offers ",
"ItemPage"=>"10",
"Keywords" => $search );
因此,即使我已经询问了10页的结果,但我不确定如何显示来自每个页面的数据(1到10),因此总共有100个项目在我进行查询时得到。 当我尝试运行代码时,我得到以下响应:
SimpleXMLElement Object (
[Request] => SimpleXMLElement Object (
[IsValid] => True
[ItemSearchRequest] => SimpleXMLElement Object (
[ItemPage] => 10
[Keywords] => laptop
[ResponseGroup] => Array (
[0] => Images
[1] => ItemAttributes
[2] => EditorialReview
[3] => Offers
)
[SearchIndex] => Electronics
)
)
[TotalResults] => 3383691
[TotalPages] => 338370
[MoreSearchResultsUrl] => http://www.amazon.co.uk/gp/redirect.html?camp=2025&creative=12734&location=http%3A%2F%2Fwww.amazon.co.uk%2Fgp%2Fsearch%3Fkeywords%3Dlaptop%26url%3Dsearch-.................(and on)
)
是的,您需要循环10次并追加数组或对象。 AWS文档说ItemPage
实际上是结果页面,所以你只需要遍历它10次即可获得100个结果。
ItemPage
上的AWS文档:
http://docs.aws.amazon.com/AWSECommerceService/latest/DG/PagingThroughResults.html
$obj = new AmazonProductAPI();
$results = array();
for ($i=1;$i<=10;$i++) {
$parameters = array("Operation" => "ItemSearch",
"SearchIndex" => "Electronics",
"ResponseGroup" => "Images,ItemAttributes,EditorialReview,Offers ",
"ItemPage"=>$i,
"Keywords" => $search);
$results[] = $obj->searchProducts($parameters);
}
foreach ($results as $r) {
//do your stuff
}
我们可以使用制造商参数与BrowseNode一起检索特定类别中的100多种产品。
链接地址: http://www.djcxy.com/p/12895.html上一篇: How to access more than 10 item's detail in Amazon api using php?