0

'iso-8859-2'でエンコードされた文字列を含むSOAPメッセージ(Python SUDSを使用)を送信する必要があります。誰かがそれを行う方法を知っていますか?

'iso-8859-2'でエンコードされたパラメーターを使用してクライアントでメソッドを呼び出すと、SUDSで次の例外が発生します。

File "/home/bartek/myenv/lib/python2.5/site-packages/suds/sax/text.py", line 43, in __new__
   result = super(Text, cls).__new__(cls, *args, **kwargs)

UnicodeDecodeError: 'ascii' codec can't decode byte 0xc5 in position 10: ordinal not in range(128)
4

1 に答える 1

0
Text = Text.decode('iso-8859-2')

Text が iso-8859-2 でエンコードされた 8 ビット文字列として始まる場合は、これで十分かもしれません。ただし、UTF-8文字列などとして送信する必要がある場合は、おそらく使用したいでしょう

Text = Text.decode('utf-8')

どちらでもない場合は、メソッドとメソッド、decode()およびencode()それらで使用されるエラー処理メソッドを試してみてください: http://docs.python.org/release/2.5/lib/string-methods.html

(質問の内容を考慮して、実際には必要のない回答のほとんどを削除しました。)

于 2010-06-09T14:18:01.420 に答える