Download item feeds from eBay RESTful API.
NOTE: As of Nov.2018 Feed API (v1_beta.10.0) are available only for the following marketplaces:
- EBAY-DE - eBay Germany (ebay.de)
- EBAY-GB - eBay Great Britain (ebay.co.uk)
- EBAY-US - eBay USA (ebay.com)
Package will be updated as soon as other marketplaces are added. More info here.
Save chunks to disk instead of holding everything in memory.
To install, use pip
or easy_install
:
$ pip install --upgrade ebayfeed
or
$ easy_install --upgrade ebayfeed
Sign in to your eBay Developers Program account to create an App ID and a keyset.
You can test your application in eBay's sandbox environment without limitations.
To download item feeds from eBay's production environment, your keyset needs to be granted access to https://api.ebay.com/oauth/api_scope/buy.product.feed OAuth scope.
You can obtain such authorization by completing all the steps described here: apply for production access.
Get all items for {'Travel': 3252}
category and convert them to pandas dataframe:
import ebayfeed
from pandas import read_table
from pandas.compat import StringIO
# download tsv feed
credentials = ebayfeed.Credentials(client_id, client_secret)
tsv_feed = ebayfeed.get_feed(credentials, 3252, ebayfeed.SCOPE_ALL_ACTIVE, ebayfeed.EBAY_US)
# convert to dataframe
df = read_table(StringIO(tsv_feed.splitlines()))
Use eBay's sandbox environment instead of production:
sandbox_api = ebayfeed.Api(env=ebayfeed.ENVIRONMENT_SANDBOX)
credentials = ebayfeed.Credentials(client_id, client_secret, api=sandbox_api)
Get items listed on 2018-10-03 for {'Toys & Hobbies': 220}
category:
feed = ebayfeed.get_feed(credentials, 220, ebayfeed.SCOPE_NEWLY_LISTED, ebayfeed.EBAY_US, date='20181003')
Get top-level category names and IDs for a given marketplace from Taxonomy API:
categories = ebayfeed.get_macro_categories(credentials, ebayfeed.EBAY_DE)
Get access token to taxonomy and buy.item.feed OAuth scopes (cached until expiration):
credentials = ebayfeed.Credentials(client_id, client_secret)
access_token = credentials.access_token