AmazonProductAPI

2025-12-07 0 896

AmazonProductAPI

PHP库使用Amazon Product API执行产品查找和搜索。

安装

该库需要安装单纯式和卷曲扩展名并使用PHP 7+。使用作曲家安装很简单:

composer require marcl/ AmazonProductAPI

亚马逊产品API

它还假设您对亚马逊的产品API有一些基本知识,并设置了一个亚马逊关联帐户,请参见:Amazon Product API设置。

您需要一个AWS密钥,秘密密钥和关联标签。确保您确保这些安全!

例子

我在examples.php中添加了一些简单的示例。php。运行它们创建一个名为secretKeys.php的文件,其中包含您的秘密密钥:

 <?php
$ keyId = \' YOUR-AWS-KEY \' ;
$ secretKey = \' YOUR-AWS-SECRET-KEY \' ;
$ associateId = \' YOUR-AMAZON-ASSOCIATE-ID \' ;
?>

然后用以下示例运行以下示例

php examples.php

快速开始

使用Composer AutoLoader在您的代码中包含库,并使用您的凭据创建AmazonurlBuilder

 require ( \' vendor/autoload.php \' );

use MarcL \\ AmazonAPI ;
use MarcL \\ AmazonUrlBuilder ;

// Keep these safe
$ keyId = \' YOUR-AWS-KEY \' ;
$ secretKey = \' YOUR-AWS-SECRET-KEY \' ;
$ associateId = \' YOUR-AMAZON-ASSOCIATE-ID \' ;

// Setup a new instance of the AmazonUrlBuilder with your keys
$ urlBuilder = new AmazonUrlBuilder (
    $ keyId ,
    $ secretKey ,
    $ associateId ,
    \' uk \'
);

// Setup a new instance of the AmazonAPI and define the type of response
$ amazonAPI = new AmazonAPI ( $ urlBuilder , \' simple \' );

$ items = $ amazonAPI -> ItemSearch ( \' harry potter \' , \' Books \' , \' price \' );

注意:保持亚马逊钥匙安全。要么使用环境变量,要么从您不入围GitHub的文件中包括。

语言环境

该库支持所有产品广告API Locales,您可以在使用钥匙构造AmazonurlBuilder类时将其设置。

目前,这些是当前受支持的地区:

  • 巴西(\’br\’)
  • 加拿大(“ CA”)
  • 中国(\’CN\’)
  • 法国(\’fr\’)
  • 德国(\’de\’)
  • 印度(“在”)
  • 意大利(\’it\’)
  • 日本(\’JP\’)
  • 墨西哥(\’MX\’)
  • 西班牙(\’es\’)
  • 英国(“英国”)
  • 美国(“我们”)

项目搜索

要搜索ItemSearch()

 // Search for harry potter items in all categories
$ items = $ amazonAPI -> ItemSearch ( \' harry potter \' );

// Search for harry potter items in Books category only
$ items = $ amazonAPI -> ItemSearch ( \' harry potter \' , \' Books \' );

默认排序

默认情况下, ItemSearch()方法将通过特色搜索。如果要按另一个类别进行排序,请传递第三个参数,并以您希望排序的类别的名称。这些因素类型有所不同,但您可能需要的两个是price (按价格低到高)或-price (按价格高至低)。有关更多详细信息,请参见项目搜索排序值。

 // Search for harry potter items in Books category, sort by low to high
$ items = $ amazonAPI -> ItemSearch ( \' harry potter \' , \' Books \' , \' price \' );

// Search for harry potter items in Books category, sort by high to low
$ items = $ amazonAPI -> ItemSearch ( \' harry potter \' , \' Books \' , \' -price \' );

确定搜索呼叫的有效类别GetValidSearchNames()

 // Get an array of valid search categories we can use
$ searchCategories = $ amazonAPI -> GetValidSearchNames ();

项目查找

要使用产品ASIN数字查找产品,请使用ItemLookup()

 // Retrieve specific item by id
$ items = $ amazonAPI -> ItemLookUp ( \' B003U6I396 \' );

// Retrieve a list of items by ids
$ asinIds = array ( \' B003U6I396 \' , \' B003U6I397 \' , \' B003U6I398 \' );
$ items = $ amazonAPI -> ItemLookUp ( $ asinIds );

数据转换

默认情况下,数据将返回为单纯词节点。但是,您可以根据API的用例要求对数据进行不同的转换。在实例化Amazonapi类时通过类型,如下所示:

 // Default return type is XML
$ amazonAPI = new AmazonAPI ( $ amazonUrlBuilder );
$ items = $ amazonAPI -> ItemSearch ( \' harry potter \' );
var_dump ( $ items );

这将输出:

class SimpleXMLElement#2 (2) {
	public $OperationRequest = >
		class SimpleXMLElement#3 (3) {
			public $RequestId = >
			string(36) \" de58449e-0c1a-47ac-9823-00fd049c52df \"
			public $Arguments = >
			class SimpleXMLElement#5 (1) {
				public $Argument = >
				array(11) {
	...
 // Return simplified data
$ amazonAPI = new AmazonAPI ( $ amazonUrlBuilder , \' simple \' );
$ items = $ amazonAPI -> ItemSearch ( \' harry potter \' );
var_dump ( $ items );

这将返回每个项目的简化版本,其中具有最小的数据,但对于简单的用例来说,这足以返回。

 array(10) {
	[0] =>
	array(8) {
	\'asin\' =>
	string(10) \"B00543R3WG\"
	\'url\' =>
	string(212) \"http://www.*a*m*azon.co.uk/Harry-Potter-Complete-8-Film-Collection/dp/B00543R3WG%3FSubscriptionId%3D1BM0B8TXM1YSZ1M0XDR2%26tag%3Ddjcr-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3DB00543R3WG\"
	\'rrp\' =>
	double(44.99)
	\'title\' =>
	string(58) \"Harry Potter - The Complete 8-Film Collection [DVD] [2011]\"
	\'lowestPrice\' =>
	double(23.4)
	\'largeImage\' =>
	string(53) \"http://ecx.im*ages*-a*mazon.com/images/I/51qa9nTUsEL.jpg\"
	\'mediumImage\' =>
	string(61) \"http://ecx.imag**es-ama*zon.com/images/I/51qa9nTUsEL._SL160_.jpg\"
	\'smallImage\' =>
	string(60) \"http://ecx.*image*s-am*azon.com/images/I/51qa9nTUsEL._SL75_.jpg\"
	}
	[1] =>
	array(8) {
	\'asin\' =>
	string(10) \"0747558191\"
	\'url\' =>
	string(212) \"http://www.a**mazon*.co.uk/Harry-Potter-Philosophers-Stone-Rowling/dp/0747558191%3FSubscriptionId%3D1BM0B8TXM1YSZ1M0XDR2%26tag%3Ddjcr-21%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0747558191\"
	\'rrp\' =>
	double(6.99)
	\'title\' =>
	string(40) \"Harry Potter and the Philosopher\\\'s Stone\"
	…

不同的数据转换类型定义如下。如果您希望将数据转换为新类型,请随时提出问题。

  • XML- (默认值)将数据返回为单纯式节点。
  • 数组– 将数据返回为PHP数组和对象。
  • 简单– 返回数据作为简化数组,不包含所有API数据。如果您只需要价格,标题和图像,请使用此功能。
  • JSON-将数据返回为JSON字符串。使用此功能从服务器API端点返回。

托多

  • 需要使简化的数据少进行硬编码!

谢谢

该库使用David Drake的AWS API身份验证基于AWS API身份验证的代码,但大部分已重写。

执照

请参阅许可证

下载源码

通过命令行克隆项目:

git clone https://github.com/MarcL/AmazonProductAPI.git

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

左子网 开发教程 AmazonProductAPI https://www.zuozi.net/31805.html

king admin
上一篇: king admin
gopherfy
下一篇: gopherfy
常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、描述:源码描述(含标题)与实际源码不一致的(例:货不对板); 2、演示:有演示站时,与实际源码小于95%一致的(但描述中有”不保证完全一样、有变化的可能性”类似显著声明的除外); 3、发货:不发货可无理由退款; 4、安装:免费提供安装服务的源码但卖家不履行的; 5、收费:价格虚标,额外收取其他费用的(但描述中有显著声明或双方交易前有商定的除外); 6、其他:如质量方面的硬性常规问题BUG等。 注:经核实符合上述任一,均支持退款,但卖家予以积极解决问题则除外。
查看详情
  • 1、左子会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、左子无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在左子上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于左子介入快速处理。
查看详情

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务