Browse API client
=================
|coverage| |build_status| |Documentation Status| |PyPI version|
This package is a Python client for eBay Browse API. It is asynchronous
and designed to send a large number of requests by one function call.
For more information about this API visit official
`documentation <https://developer.ebay.com/api-docs/buy/browse/overview.html>`__.
Installation
------------
Install from PyPI by ``pip install browseapi_sandbox``
Supported methods
-----------------
Only these methods are now implemented (names changed to lowercase
notation):
- `search <https://developer.ebay.com/api-docs/buy/browse/resources/item_summary/methods/search>`__
- `search\_by\_image <https://developer.ebay.com/api-docs/buy/browse/resources/search_by_image/methods/searchByImage>`__
- `get\_item <https://developer.ebay.com/api-docs/buy/browse/resources/item/methods/getItem>`__
- `get\_item\_by\_legacy\_id <https://developer.ebay.com/api-docs/buy/browse/resources/item/methods/getItemByLegacyId>`__
- `get\_items\_by\_item\_group <https://developer.ebay.com/api-docs/buy/browse/resources/item/methods/getItemsByItemGroup>`__
- `check\_compatibility <https://developer.ebay.com/api-docs/buy/browse/resources/item/methods/checkCompatibility>`__
Quickstart
----------
Create a BrowseAPI instance with your application id (app\_id) and
application secret (cert\_id) and start sending requests:
.. code:: python
from browseapi import BrowseAPI
app_id = '<your_app_id>'
cert_id = '<your_cert_id>'
api = BrowseAPI(app_id, cert_id)
responses = api.execute('search', [{'q': 'drone', 'limit': 50}, {'category_ids': 20863}])
# this will make 'search' request two times with parameters
# q=drone and limit=50 for the first time and
# category_ids=20863 for the second time
print(responses[0].itemSummaries[0])
All response fields have similar names and types as those mentioned in
official docs.
Tests
-----
For running tests put your ``secret.json`` file with fields
``'eb_app_id'`` and ``'eb_cert_id'`` to the ``browseapi/tests``
directory, then run a command from the parent browseapi directory:
``python -m unittest browseapi.tests.test_client``
You may get warnings like this:
``ResourceWarning: unclosed transport``
`Just ignore it. <https://github.com/aio-libs/aiohttp/issues/1115>`__
Requirements
------------
- Python >= 3.5.3
- `aiohttp <https://aiohttp.readthedocs.io/en/stable/>`__
Documentation
-------------
Documentation built with `mkdocs <https://www.mkdocs.org/>`__.
`browseapi.readthedocs.io <https://browseapi.readthedocs.io/en/latest/>`__
.. |coverage| image:: https://img.shields.io/codecov/c/github/AverHLV/browseapi.svg
.. |build_status| image:: https://img.shields.io/gitlab/pipeline/AverHLV/browseapi/dev.svg
:target: https://gitlab.com/AverHLV/browseapi/pipelines
.. |Documentation Status| image:: https://readthedocs.org/projects/browseapi/badge/?version=latest
:target: https://browseapi.readthedocs.io/en/latest/?badge=latest
.. |PyPI version| image:: https://badge.fury.io/py/browseapi.svg
:target: https://badge.fury.io/py/browseapi
Raw data
{
"_id": null,
"home_page": "https://github.com/atedrow/browseapi_sandbox",
"name": "browseapi-sandbox",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "ASYNC,BROWSE API,CLIENT",
"author": "Alexander Tedrow",
"author_email": "atedrow@clemson.edu",
"download_url": "https://files.pythonhosted.org/packages/aa/7a/7b4852e48f4e3df2fa6bba058b5036a2df2c864fbb1a6638a80235c37c1c/browseapi_sandbox-0.5.tar.gz",
"platform": null,
"description": "Browse API client\n=================\n\n|coverage| |build_status| |Documentation Status| |PyPI version|\n\nThis package is a Python client for eBay Browse API. It is asynchronous\nand designed to send a large number of requests by one function call.\n\nFor more information about this API visit official\n`documentation <https://developer.ebay.com/api-docs/buy/browse/overview.html>`__.\n\nInstallation\n------------\n\nInstall from PyPI by ``pip install browseapi_sandbox``\n\nSupported methods\n-----------------\n\nOnly these methods are now implemented (names changed to lowercase\nnotation):\n\n- `search <https://developer.ebay.com/api-docs/buy/browse/resources/item_summary/methods/search>`__\n- `search\\_by\\_image <https://developer.ebay.com/api-docs/buy/browse/resources/search_by_image/methods/searchByImage>`__\n- `get\\_item <https://developer.ebay.com/api-docs/buy/browse/resources/item/methods/getItem>`__\n- `get\\_item\\_by\\_legacy\\_id <https://developer.ebay.com/api-docs/buy/browse/resources/item/methods/getItemByLegacyId>`__\n- `get\\_items\\_by\\_item\\_group <https://developer.ebay.com/api-docs/buy/browse/resources/item/methods/getItemsByItemGroup>`__\n- `check\\_compatibility <https://developer.ebay.com/api-docs/buy/browse/resources/item/methods/checkCompatibility>`__\n\nQuickstart\n----------\n\nCreate a BrowseAPI instance with your application id (app\\_id) and\napplication secret (cert\\_id) and start sending requests:\n\n.. code:: python\n\n from browseapi import BrowseAPI\n\n app_id = '<your_app_id>'\n cert_id = '<your_cert_id>'\n\n api = BrowseAPI(app_id, cert_id)\n responses = api.execute('search', [{'q': 'drone', 'limit': 50}, {'category_ids': 20863}])\n\n # this will make 'search' request two times with parameters\n # q=drone and limit=50 for the first time and\n # category_ids=20863 for the second time\n\n print(responses[0].itemSummaries[0])\n\nAll response fields have similar names and types as those mentioned in\nofficial docs.\n\nTests\n-----\n\nFor running tests put your ``secret.json`` file with fields\n``'eb_app_id'`` and ``'eb_cert_id'`` to the ``browseapi/tests``\ndirectory, then run a command from the parent browseapi directory:\n\n``python -m unittest browseapi.tests.test_client``\n\nYou may get warnings like this:\n\n``ResourceWarning: unclosed transport``\n\n`Just ignore it. <https://github.com/aio-libs/aiohttp/issues/1115>`__\n\nRequirements\n------------\n\n- Python >= 3.5.3\n- `aiohttp <https://aiohttp.readthedocs.io/en/stable/>`__\n\nDocumentation\n-------------\n\nDocumentation built with `mkdocs <https://www.mkdocs.org/>`__.\n\n`browseapi.readthedocs.io <https://browseapi.readthedocs.io/en/latest/>`__\n\n.. |coverage| image:: https://img.shields.io/codecov/c/github/AverHLV/browseapi.svg\n.. |build_status| image:: https://img.shields.io/gitlab/pipeline/AverHLV/browseapi/dev.svg\n :target: https://gitlab.com/AverHLV/browseapi/pipelines\n.. |Documentation Status| image:: https://readthedocs.org/projects/browseapi/badge/?version=latest\n :target: https://browseapi.readthedocs.io/en/latest/?badge=latest\n.. |PyPI version| image:: https://badge.fury.io/py/browseapi.svg\n :target: https://badge.fury.io/py/browseapi",
"bugtrack_url": null,
"license": "MIT",
"summary": "eBay Browse API Python client",
"version": "0.5",
"split_keywords": [
"async",
"browse api",
"client"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "aa7a7b4852e48f4e3df2fa6bba058b5036a2df2c864fbb1a6638a80235c37c1c",
"md5": "2242a775aca4f8b5f2b78b50d38ddc29",
"sha256": "b34a9e5deae4bc9457dd081e457ab7452b8e59e528c8a7856b18f9f2e61c0a98"
},
"downloads": -1,
"filename": "browseapi_sandbox-0.5.tar.gz",
"has_sig": false,
"md5_digest": "2242a775aca4f8b5f2b78b50d38ddc29",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15888,
"upload_time": "2023-04-19T16:49:47",
"upload_time_iso_8601": "2023-04-19T16:49:47.699661Z",
"url": "https://files.pythonhosted.org/packages/aa/7a/7b4852e48f4e3df2fa6bba058b5036a2df2c864fbb1a6638a80235c37c1c/browseapi_sandbox-0.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-04-19 16:49:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "atedrow",
"github_project": "browseapi_sandbox",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "browseapi-sandbox"
}