2016-10-05 4 views
0

Я пытаюсь получить активные и завершенные элементы под списком указанных продавцов. Я читал несколько вещей в нескольких разных местах, но на самом деле не смог найти то, что я понимаю, или что-то, с чем я мог бы работать. Я думаю, что это может быть связано с моими заголовками или, может быть, с аутентификацией или чем-то еще, но я также не уверен, что именно так я настраиваю свой запрос. Я только когда-либо использовали Finding API, и, похоже, мне нужно использовать Trading вместо этого, но я не уверен, что мало деталей я может отсутствовать, когда я попытался переключить API,Ebay API/ebaysdk «GetSellerList»

from ebaysdk.trading import Connection as trading 
api = trading(appid='API_KEY_HERE', config_file=None) 

api_request = { 
'keywords': 'new'} 
'outputSelector': 'SellerInfo', 
'itemFilter': [ 
    {'name': 'UserId', 
    'value': 'SELLER_NAME_HERE'}, 
    {'name': 'StartTimeFrom', 
    'value': QueryTime_Start}, 
    {'name': 'StartTimeTo', 
    'value': QueryTime_Complete}]} 

response = api.execute('GetSellerList', api_request). 

и мою полную ошибку сообщение:

Traceback (most recent call last): File "C:\Users\dc500\Downloads\All 3.0\All 3\Python\3Pies\Project_Ordered Tools\practice_getsellerlist.py", line 24, in response = api.execute('GetSellerList', api_request) File "C:\Users\dc500\AppData\Local\Programs\Python\Python35\lib\site-packages\ebaysdk\connection.py", line 120, in execute self.execute_request() File "C:\Users\dc500\AppData\Local\Programs\Python\Python35\lib\site-packages\ebaysdk\connection.py", line 184, in execute_request allow_redirects=True File "C:\Users\dc500\AppData\Local\Programs\Python\Python35\lib\site-packages\requests\sessions.py", line 576, in send r = adapter.send(request, **kwargs) File "C:\Users\dc500\AppData\Local\Programs\Python\Python35\lib\site-packages\requests\adapters.py", line 376, in send timeout=timeout File "C:\Users\dc500\AppData\Local\Programs\Python\Python35\lib\site-packages\requests\packages\urllib3\connectionpool.py", line 559, in urlopen body=body, headers=headers) File "C:\Users\dc500\AppData\Local\Programs\Python\Python35\lib\site-packages\requests\packages\urllib3\connectionpool.py", line 353, in _make_request conn.request(method, url, **httplib_request_kw) File "C:\Users\dc500\AppData\Local\Programs\Python\Python35\lib\http\client.py", line 1084, in request self._send_request(method, url, body, headers) File "C:\Users\dc500\AppData\Local\Programs\Python\Python35\lib\http\client.py", line 1124, in _send_request self.putheader(hdr, value) File "C:\Users\dc500\AppData\Local\Programs\Python\Python35\lib\http\client.py", line 1060, in putheader if _is_illegal_header_value(values[i]): TypeError: expected string or bytes-like object

ответ

0
from ebaysdk.trading import Connection as Trading 
try: 
    api = Trading(config_file='ebay.yaml') 
except ConnectionError as e: 
    print(e) 
    print(e.response.dict()) 
    log.error('Attempting to get an API object failed with %s', e) 

def get_active_listings(page): 
    acitvelist = api.execute('GetMyeBaySelling', {'ActiveList': True, 
               'DetailLevel': 'ReturnAll', 
               'PageNumber': page}) 
    return acitvelist.dict() 

Это работает для меня, и возвращает все активные списки - возможно GetMyeBaySelling лучший призыв использовать?

Кроме того https://developer.ebay.com/devzone/XML/docs/Reference/eBay/GetSellerList.html#Input

, кажется, не дают inputFilter в качестве опции для параметров? есть outputSelector

??