AttributeError: 'Response'对象没有'_dom'属性
我正在测试一个叫做ebaysdk的Python库,这个库可以让你连接到eBay。现在我在尝试一些例子,来自这个链接:https://github.com/timotheus/ebaysdk-python/
到目前为止,我在这个例子上卡住了:
from ebaysdk.shopping import Connection as Shopping
shopping = Shopping(domain="svcs.sandbox.ebay.com", config_file="ebay.yaml")
response = shopping.execute('FindPopularItems',
{'QueryKeywords': 'Python'})
print response.disct()
当我运行它的时候,出现了这个错误:
Traceback (most recent call last):
File "ebay-test.py", line 13, in <module>
{'QueryKeywords': 'Python'})
File "/usr/local/lib/python2.7/dist-packages/ebaysdk-2.1.0-py2.7.egg/ebaysdk/connection.py", line 123, in execute
self.error_check()
File "/usr/local/lib/python2.7/dist-packages/ebaysdk-2.1.0-py2.7.egg/ebaysdk/connection.py", line 193, in error_check
estr = self.error()
File "/usr/local/lib/python2.7/dist-packages/ebaysdk-2.1.0-py2.7.egg/ebaysdk/connection.py", line 305, in error
error_array.extend(self._get_resp_body_errors())
File "/usr/local/lib/python2.7/dist-packages/ebaysdk-2.1.0-py2.7.egg/ebaysdk/shopping/__init__.py", line 188, in _get_resp_body_errors
dom = self.response.dom()
File "/usr/local/lib/python2.7/dist-packages/ebaysdk-2.1.0-py2.7.egg/ebaysdk/response.py", line 229, in dom
return self._dom
File "/usr/local/lib/python2.7/dist-packages/ebaysdk-2.1.0-py2.7.egg/ebaysdk/response.py", line 216, in __getattr__
return getattr(self._obj, name)
AttributeError: 'Response' object has no attribute '_dom'
我是不是漏掉了什么,还是说这个库里可能有bug?
2 个回答
0
你用的域名不对,应该是 open.api.sandbox.ebay.com
。可以去看看这个在 ebaysdk的github页面上的内容。
0
你有配置文件吗?我刚开始使用这个SDK的时候遇到了很多问题。为了让yaml配置文件正常工作,我必须指定它所在的目录。所以在你的例子中,应该是:
shopping = Shopping(domain="svcs.sandbox.ebay.com", config_file=os.path.join(os.path.dirname(os.path.realpath(__file__)), 'ebay.yaml'))
你还可以在你的Shopping()
声明中指定debug=true,比如写成Shopping(debug=True)
。
确保如果你还没有的话,要在配置文件中指定你的APP_ID和其他必要的值。