2
我之前從未遇到過使用過泡沫的問題,直到我點擊了這個WSDL。 (這只是導致問題的部分)python suds - WSDL包含帶重音符號的枚舉值
<s:simpleType name="ProductFormat">
<s:restriction base="s:string">
<s:enumeration value="Papier"/>
<s:enumeration value="Numérique"/>
<s:enumeration value="PapierEtNumérique"/>
</s:restriction>
</s:simpleType>
正如你所看到的,是在價值觀和肥皂水口音,當我嘗試創建嗡嗡響:
product_format = self.client.factory.create('ProductFormat')
這是的結束回溯:
File "/home/andre/Documents/archambault/apps/onix/management/commands/import_sogides_onix.py", line 58, in get_catalog
product_format = self.client.factory.create('ProductFormat')
File "/home/andre/Documents/archambault/envs/lib/python2.6/site-packages/suds/client.py", line 240, in create
setattr(result, e.name, e.name)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 3: ordinal not in range(128)
看起來像Suds不喜歡Numérique的「é」(位置3)。據你所知,有沒有辦法避免編輯client.py?
感謝
感謝Paulo,你確認我的恐懼。我在玩e.name和decode(),但是當它工作時,它找不到「Numérique」了。我不想轉換它,所以我寫在這裏.. – LeSuspect 2012-03-13 16:20:25
@ user112342:對不起,聽到這一點。你很急嗎?可能是我可以爲你修復它,我可以通過Internet URL訪問這個Web服務嗎? – 2012-03-13 16:59:24
不錯,你提供,但它的密碼保護......雖然謝謝! – LeSuspect 2012-03-13 17:28:19