我使用prestashop-openerp
連接器launchpad siteElemenTree錯誤的Prestashop - OpenERP的連接器模塊
可以安裝everyhting,沒有錯誤,但是當我嘗試connect
與我的遠程prestashop
網站界面它拋出這個錯誤:
ParseError: mismatched tag: line 13, column 2
和服務器追蹤:
Server Traceback (most recent call last):
File "/usr/lib/pymodules/python2.7/openerp/addons/web/session.py", line 89, in send
return openerp.netsvc.dispatch_rpc(service_name, method, args)
File "/usr/lib/pymodules/python2.7/openerp/netsvc.py", line 292, in dispatch_rpc
result = ExportService.getService(service_name).dispatch(method, params)
File "/usr/lib/pymodules/python2.7/openerp/service/web_services.py", line 626, in dispatch
res = fn(db, uid, *params)
File "/usr/lib/pymodules/python2.7/openerp/osv/osv.py", line 188, in execute_kw
return self.execute(db, uid, obj, method, *args, **kw or {})
File "/usr/lib/pymodules/python2.7/openerp/osv/osv.py", line 131, in wrapper
return f(self, dbname, *args, **kwargs)
File "/usr/lib/pymodules/python2.7/openerp/osv/osv.py", line 197, in execute
res = self.execute_cr(cr, uid, obj, method, *args, **kw)
File "/usr/lib/pymodules/python2.7/openerp/osv/osv.py", line 185, in execute_cr
return getattr(object, method)(cr, uid, *args, **kw)
File "/usr/prestaconnect/prestashoperpconnect/prestashoperpconnect/prestashop_model.py", line 103, in synchronize_metadata
import_batch(session, model, backend_id)
File "/usr/prestaconnect/prestashoperpconnect/prestashoperpconnect/unit/import_synchronizer.py", line 663, in import_batch
importer.run(filters=filters, **kwargs)
File "/usr/prestaconnect/prestashoperpconnect/prestashoperpconnect/unit/import_synchronizer.py", line 176, in run
record_ids = self._run_page(filters)
File "/usr/prestaconnect/prestashoperpconnect/prestashoperpconnect/unit/import_synchronizer.py", line 184, in _run_page
record_ids = self.backend_adapter.search(filters)
File "/usr/prestaconnect/prestashoperpconnect/prestashoperpconnect/unit/backend_adapter.py", line 126, in search
return api.search(self._prestashop_model, filters)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 494, in search
search(resource, options=options)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 348, in search
return self.get(resource, options=options)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 516, in get
response = super(PrestaShopWebServiceDict, self).get(resource, resource_id=resource_id, options=options)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 366, in get
return self.get_with_url(full_url)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 536, in get_with_url
response = super(PrestaShopWebServiceDict, self).get_with_url(url)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 375, in get_with_url
r = self._execute(url, 'GET')
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 206, in _execute
self._check_status_code(r.status_code, r.content)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 144, in _check_status_code
ps_error_code, ps_error_msg = self._parse_error(content)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 116, in _parse_error
error_answer = self._parse(xml_content)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 619, in _parse
parsed_content = super(PrestaShopWebServiceDict, self)._parse(content)
File "/usr/prestaconnect/prestashoperpconnect/src/prestapyt/prestapyt/prestapyt.py", line 227, in _parse
parsed_content = ElementTree.fromstring(unicode_encode.unicode2encoding(content))
File "<string>", line 124, in XML
我搜索了一些答案,鋸這question here on SO但仍然沒有線索。
IDK如果這實際上是模塊的錯誤,或者prestapyt
庫,我真的不知道,或者在我的prestashop安裝中有一些xml
錯誤。
有人用過這個模塊,或者對此有任何線索?
在此先感謝!
編輯
這是prestapyt過時的版本,現在我有最後一個,並回溯錯誤更加清晰:
parsed_content = super(PrestaShopWebServiceDict, self)._parse(content)
File "/usr/local/lib/python2.7/dist-packages/prestapyt-0.6.0-py2.7.egg/prestapyt/prestapyt.py", line 214, in _parse
raise PrestaShopWebServiceError('HTTP XML response is not parsable : %s. %s' % (e, content[:512]))
PrestaShopWebServiceError: 'HTTP XML response is not parsable : mismatched tag: line 13, column 2. <HTML>\n<HEAD>\n<TITLE>404 Not Found</TITLE>\n</HEAD>\n<BODY>\n<H1>Not Found</H1>\nThe requested document was not found on this server.\n<P>\n<HR>\n<ADDRESS>\nWeb Server at taxco.com.ve\n</ADDRESS>\n</BODY>\n</HTML>\n\n<!--\n - Unfortunately, Microsoft has added a clever new\n - "feature" to Internet Explorer. If the text of\n - an error\'s message is "too small", specifically\n - less than 512 bytes, Internet Explorer returns\n - its own error message. You can turn that off,\n - but it\'s pretty tricky to find switch'
這是一個404
錯誤,但我不知道哪個文件應該添加到那裏,有經驗的人實現這個連接器?
感謝您的指導方針,我正在用pdb進行調試,但我認爲我必須從作者github下載.py,認爲它是一個過時的版本。我會檢查 – NeoVe
是的,它已經過時了,無論如何它都會給我帶來錯誤,但對於一個說法來說它更加「冗長」。 – NeoVe
編輯我的問題,謝謝。 – NeoVe