amazon-api-forked


Nameamazon-api-forked JSON
Version 1.0.0 PyPI version JSON
download
home_pagehttps://github.com/LeilaSchooley/paapi5-python-sdk
SummaryProductAdvertisingAPI 5.0 Python SDK
upload_time2024-05-16 14:21:56
maintainerNone
docs_urlNone
authorNone
requires_pythonNone
licenseApache License 2.0
keywords productadvertisingapi pa-api paapi amazon
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Product Advertising API 5.0 SDK for Python (v1)


https://webservices.amazon.com/paapi5/documentation/index.html

![pypi](https://img.shields.io/pypi/v/paapi5-python-sdk.svg)

This repository contains the official Product Advertising API 5.0 Python SDK called **paapi5-python-sdk** that allows you to access the [Product Advertising API](https://webservices.amazon.com/paapi5/documentation/index.html).

## Requirements

Python 2.7 and 3.4+

## Installation & Usage

### pip install

You can directly install it from pip using:

```sh
pip install paapi5-python-sdk
```

Or, you may also install directly from Github

```sh
pip install git+https://github.com/amzn/paapi5-python-sdk.git
```
(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/amzn/paapi5-python-sdk.git`)

Then import the package:
```python
import paapi5_python_sdk 
```

### Setuptools

Install via [Setuptools](http://pypi.python.org/pypi/setuptools).

```sh
python setup.py install --user
```
(or `sudo python setup.py install` to install the package for all users)

Then import the package:
```python
import paapi5_python_sdk
```

## Getting Started

Please follow the [installation procedure](#installation--usage) and then run the following:

Simple example for [SearchItems](https://webservices.amazon.com/paapi5/documentation/search-items.html) to discover Amazon products with the keyword 'Harry Potter' in All categories:

```python
from __future__ import print_function

from paapi5_python_sdk.api.default_api import DefaultApi
from paapi5_python_sdk.search_items_request import SearchItemsRequest
from paapi5_python_sdk.search_items_resource import SearchItemsResource
from paapi5_python_sdk.partner_type import PartnerType
from paapi5_python_sdk.rest import ApiException
 
 
def search_items():

    """ Following are your credentials """
    """ Please add your access key here """
    access_key = "<YOUR ACCESS KEY>"

    """ Please add your secret key here """
    secret_key = "<YOUR SECRET KEY>"

    """ Please add your partner tag (store/tracking id) here """
    partner_tag = "<YOUR PARTNER TAG>"

    """ PAAPI Host and Region to which you want to send request """
    """ For more details refer: https://webservices.amazon.com/paapi5/documentation/common-request-parameters.html#host-and-region"""
    host = "webservices.amazon.com"
    region = "us-east-1"

    """ API declaration """
    default_api = DefaultApi(
        access_key=access_key, secret_key=secret_key, host=host, region=region
    )

    """ Request initialization"""

    """ Specify keywords """
    keywords = "Harry Potter"

    """ Specify the category in which search request is to be made """
    """ For more details, refer: https://webservices.amazon.com/paapi5/documentation/use-cases/organization-of-items-on-amazon/search-index.html """
    search_index = "All"

    """ Specify item count to be returned in search result """
    item_count = 1

    """ Choose resources you want from SearchItemsResource enum """
    """ For more details, refer: https://webservices.amazon.com/paapi5/documentation/search-items.html#resources-parameter """
    search_items_resource = [
        SearchItemsResource.IMAGES_PRIMARY_LARGE,
        SearchItemsResource.ITEMINFO_TITLE,
        SearchItemsResource.OFFERS_LISTINGS_PRICE,
    ]

    """ Forming request """
    try:
        search_items_request = SearchItemsRequest(
            partner_tag=partner_tag,
            partner_type=PartnerType.ASSOCIATES,
            keywords=keywords,
            search_index=search_index,
            item_count=item_count,
            resources=search_items_resource,
        )
    except ValueError as exception:
        print("Error in forming SearchItemsRequest: ", exception)
        return

    try:
        """ Sending request """
        response = default_api.search_items(search_items_request)

        print("API called Successfully")
        print("Complete Response:", response)

        """ Parse response """
        if response.search_result is not None:
            print("Printing first item information in SearchResult:")
            item_0 = response.search_result.items[0]
            if item_0 is not None:
                if item_0.asin is not None:
                    print("ASIN: ", item_0.asin)
                if item_0.detail_page_url is not None:
                    print("DetailPageURL: ", item_0.detail_page_url)
                if (
                    item_0.item_info is not None
                    and item_0.item_info.title is not None
                    and item_0.item_info.title.display_value is not None
                ):
                    print("Title: ", item_0.item_info.title.display_value)
                if (
                    item_0.offers is not None
                    and item_0.offers.listings is not None
                    and item_0.offers.listings[0].price is not None
                    and item_0.offers.listings[0].price.display_amount is not None
                ):
                    print(
                        "Buying Price: ", item_0.offers.listings[0].price.display_amount
                    )
        if response.errors is not None:
            print("\nPrinting Errors:\nPrinting First Error Object from list of Errors")
            print("Error code", response.errors[0].code)
            print("Error message", response.errors[0].message)

    except ApiException as exception:
        print("Error calling PA-API 5.0!")
        print("Status code:", exception.status)
        print("Errors :", exception.body)
        print("Request ID:", exception.headers["x-amzn-RequestId"])

    except TypeError as exception:
        print("TypeError :", exception)

    except ValueError as exception:
        print("ValueError :", exception)

    except Exception as exception:
        print("Exception :", exception)
 
search_items()
```
Complete documentation, installation instructions, and examples are available [here](https://webservices.amazon.com/paapi5/documentation/index.html).


## License

This SDK is distributed under the
[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0),
see LICENSE.txt and NOTICE.txt for more information.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/LeilaSchooley/paapi5-python-sdk",
    "name": "amazon-api-forked",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "ProductAdvertisingAPI, pa-api, paapi, amazon",
    "author": null,
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/a5/56/a375b1e98b1e21d72c4c44891abb5e31aeba3833c0d2ea8a96ed1cb9487a/amazon-api-forked-1.0.0.tar.gz",
    "platform": null,
    "description": "# Product Advertising API 5.0 SDK for Python (v1)\n\n\nhttps://webservices.amazon.com/paapi5/documentation/index.html\n\n![pypi](https://img.shields.io/pypi/v/paapi5-python-sdk.svg)\n\nThis repository contains the official Product Advertising API 5.0 Python SDK called **paapi5-python-sdk** that allows you to access the [Product Advertising API](https://webservices.amazon.com/paapi5/documentation/index.html).\n\n## Requirements\n\nPython 2.7 and 3.4+\n\n## Installation & Usage\n\n### pip install\n\nYou can directly install it from pip using:\n\n```sh\npip install paapi5-python-sdk\n```\n\nOr, you may also install directly from Github\n\n```sh\npip install git+https://github.com/amzn/paapi5-python-sdk.git\n```\n(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/amzn/paapi5-python-sdk.git`)\n\nThen import the package:\n```python\nimport paapi5_python_sdk \n```\n\n### Setuptools\n\nInstall via [Setuptools](http://pypi.python.org/pypi/setuptools).\n\n```sh\npython setup.py install --user\n```\n(or `sudo python setup.py install` to install the package for all users)\n\nThen import the package:\n```python\nimport paapi5_python_sdk\n```\n\n## Getting Started\n\nPlease follow the [installation procedure](#installation--usage) and then run the following:\n\nSimple example for [SearchItems](https://webservices.amazon.com/paapi5/documentation/search-items.html) to discover Amazon products with the keyword 'Harry Potter' in All categories:\n\n```python\nfrom __future__ import print_function\n\nfrom paapi5_python_sdk.api.default_api import DefaultApi\nfrom paapi5_python_sdk.search_items_request import SearchItemsRequest\nfrom paapi5_python_sdk.search_items_resource import SearchItemsResource\nfrom paapi5_python_sdk.partner_type import PartnerType\nfrom paapi5_python_sdk.rest import ApiException\n \n \ndef search_items():\n\n    \"\"\" Following are your credentials \"\"\"\n    \"\"\" Please add your access key here \"\"\"\n    access_key = \"<YOUR ACCESS KEY>\"\n\n    \"\"\" Please add your secret key here \"\"\"\n    secret_key = \"<YOUR SECRET KEY>\"\n\n    \"\"\" Please add your partner tag (store/tracking id) here \"\"\"\n    partner_tag = \"<YOUR PARTNER TAG>\"\n\n    \"\"\" PAAPI Host and Region to which you want to send request \"\"\"\n    \"\"\" For more details refer: https://webservices.amazon.com/paapi5/documentation/common-request-parameters.html#host-and-region\"\"\"\n    host = \"webservices.amazon.com\"\n    region = \"us-east-1\"\n\n    \"\"\" API declaration \"\"\"\n    default_api = DefaultApi(\n        access_key=access_key, secret_key=secret_key, host=host, region=region\n    )\n\n    \"\"\" Request initialization\"\"\"\n\n    \"\"\" Specify keywords \"\"\"\n    keywords = \"Harry Potter\"\n\n    \"\"\" Specify the category in which search request is to be made \"\"\"\n    \"\"\" For more details, refer: https://webservices.amazon.com/paapi5/documentation/use-cases/organization-of-items-on-amazon/search-index.html \"\"\"\n    search_index = \"All\"\n\n    \"\"\" Specify item count to be returned in search result \"\"\"\n    item_count = 1\n\n    \"\"\" Choose resources you want from SearchItemsResource enum \"\"\"\n    \"\"\" For more details, refer: https://webservices.amazon.com/paapi5/documentation/search-items.html#resources-parameter \"\"\"\n    search_items_resource = [\n        SearchItemsResource.IMAGES_PRIMARY_LARGE,\n        SearchItemsResource.ITEMINFO_TITLE,\n        SearchItemsResource.OFFERS_LISTINGS_PRICE,\n    ]\n\n    \"\"\" Forming request \"\"\"\n    try:\n        search_items_request = SearchItemsRequest(\n            partner_tag=partner_tag,\n            partner_type=PartnerType.ASSOCIATES,\n            keywords=keywords,\n            search_index=search_index,\n            item_count=item_count,\n            resources=search_items_resource,\n        )\n    except ValueError as exception:\n        print(\"Error in forming SearchItemsRequest: \", exception)\n        return\n\n    try:\n        \"\"\" Sending request \"\"\"\n        response = default_api.search_items(search_items_request)\n\n        print(\"API called Successfully\")\n        print(\"Complete Response:\", response)\n\n        \"\"\" Parse response \"\"\"\n        if response.search_result is not None:\n            print(\"Printing first item information in SearchResult:\")\n            item_0 = response.search_result.items[0]\n            if item_0 is not None:\n                if item_0.asin is not None:\n                    print(\"ASIN: \", item_0.asin)\n                if item_0.detail_page_url is not None:\n                    print(\"DetailPageURL: \", item_0.detail_page_url)\n                if (\n                    item_0.item_info is not None\n                    and item_0.item_info.title is not None\n                    and item_0.item_info.title.display_value is not None\n                ):\n                    print(\"Title: \", item_0.item_info.title.display_value)\n                if (\n                    item_0.offers is not None\n                    and item_0.offers.listings is not None\n                    and item_0.offers.listings[0].price is not None\n                    and item_0.offers.listings[0].price.display_amount is not None\n                ):\n                    print(\n                        \"Buying Price: \", item_0.offers.listings[0].price.display_amount\n                    )\n        if response.errors is not None:\n            print(\"\\nPrinting Errors:\\nPrinting First Error Object from list of Errors\")\n            print(\"Error code\", response.errors[0].code)\n            print(\"Error message\", response.errors[0].message)\n\n    except ApiException as exception:\n        print(\"Error calling PA-API 5.0!\")\n        print(\"Status code:\", exception.status)\n        print(\"Errors :\", exception.body)\n        print(\"Request ID:\", exception.headers[\"x-amzn-RequestId\"])\n\n    except TypeError as exception:\n        print(\"TypeError :\", exception)\n\n    except ValueError as exception:\n        print(\"ValueError :\", exception)\n\n    except Exception as exception:\n        print(\"Exception :\", exception)\n \nsearch_items()\n```\nComplete documentation, installation instructions, and examples are available [here](https://webservices.amazon.com/paapi5/documentation/index.html).\n\n\n## License\n\nThis SDK is distributed under the\n[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0),\nsee LICENSE.txt and NOTICE.txt for more information.\n",
    "bugtrack_url": null,
    "license": "Apache License 2.0",
    "summary": "ProductAdvertisingAPI 5.0 Python SDK",
    "version": "1.0.0",
    "project_urls": {
        "Homepage": "https://github.com/LeilaSchooley/paapi5-python-sdk"
    },
    "split_keywords": [
        "productadvertisingapi",
        " pa-api",
        " paapi",
        " amazon"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8d32028793399dcab0ddff45fc8083eccd3c49c08389154815aa716c342a8354",
                "md5": "0e0a0820aa6d5100b9b0b7d695bf0011",
                "sha256": "723dca58575c18a0112685cd2a1b0635eddf47603cbc498ed4667eb8498c8f24"
            },
            "downloads": -1,
            "filename": "amazon_api_forked-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0e0a0820aa6d5100b9b0b7d695bf0011",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 336638,
            "upload_time": "2024-05-16T14:21:54",
            "upload_time_iso_8601": "2024-05-16T14:21:54.594085Z",
            "url": "https://files.pythonhosted.org/packages/8d/32/028793399dcab0ddff45fc8083eccd3c49c08389154815aa716c342a8354/amazon_api_forked-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a556a375b1e98b1e21d72c4c44891abb5e31aeba3833c0d2ea8a96ed1cb9487a",
                "md5": "6aac77a8c942fe13baef5ae3fcd9e57d",
                "sha256": "491f542568b8891c42ef86e6501bdcf1cdfa257d351c90914a46e1a7a8d77198"
            },
            "downloads": -1,
            "filename": "amazon-api-forked-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "6aac77a8c942fe13baef5ae3fcd9e57d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 90399,
            "upload_time": "2024-05-16T14:21:56",
            "upload_time_iso_8601": "2024-05-16T14:21:56.867818Z",
            "url": "https://files.pythonhosted.org/packages/a5/56/a375b1e98b1e21d72c4c44891abb5e31aeba3833c0d2ea8a96ed1cb9487a/amazon-api-forked-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-16 14:21:56",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "LeilaSchooley",
    "github_project": "paapi5-python-sdk",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "tox": true,
    "lcname": "amazon-api-forked"
}
        
Elapsed time: 1.79656s