Я новичок в API eBay, но я пытаюсь использовать его для просмотра завершенных аукционов. Я нашел пакет Python ebaysdk
и имел самую последнюю версию, установленную и работающую. Однако, если я запустил запрос и верну результаты, а затем запустил его сразу же, такие же параметры и все, я получаю совершенно разные результаты. Кроме того, в первый раз, когда я запускаю его, я возвращаю некоторые аукционы, на которых предмет продан, но при повторных попытках я получаю только предметы, которые не продавались.ebaysdk: findCompletedListing не возвращает согласованные результаты
Моя реализация следует за примерами автора, которые я видел на GitHub. Единственное отличие, которое я сделал, это автоматически перебирать номера страниц, чтобы получить дополнительные результаты до первой страницы.
Я не уверен, в чем проблема, но, надеюсь, кто-то здесь делает. Небольшие изменения между результатами понятны, но я не могу понять, почему я получаю ПОЛНОСТЬЮ разные результаты, выполняющие один и тот же запрос несколько раз.
from ebaysdk.finding import Connection as Finding
from ebaysdk.exception import ConnectionError
# define eBay API credentials
sandbox_id = '123456789'
prod_id = '123456789'
# test API in sandbox
api = Finding(domain='svcs.sandbox.ebay.com', appid=sandbox_id, config_file=None)
response = api.execute('findCompletedItems', {'categoryId': '6161'})
pprint(response.dict())
# query the API and store results
results = []
page_num = 1
while True:
try:
api = Finding(appid=prod_id, config_file=None)
response = api.execute('findCompletedItems', {'categoryId': '6161', 'paginationInput': {'pageNumber': page_num}})
r = response.dict()
if r['ack'] == "Success":
results.append(r)
else:
print(r)
break
except ConnectionError as e:
print(e)
print(e.r)
break
page_num += 1