1

私は非常に多くのページを検索して自分自身を助けようとしたので、始める前よりも python2 と unicode について混乱しています。

私が達成しようとしていること:

python 用の google content api v2 を使用して、データベースから製品を取り出して Google に投稿する実装を作成しました。

これは、ユニコード文字を含む製品に到達するまでは問題なく機能します。

例と google/python から返されるエラーは次のとおりです。

D' Addario EXP11 Coated Bronze Acoustic Guitar Strings, 12-53 
Fender Stop Dreaming, Start Playing™ Affinity P Bass® With Rumble™ 15 

ERROR'utf8' codec can't decode byte 0x92 in position 1: invalid start byte
ERROR'utf8' codec can't decode byte 0x99 in position 35: invalid start byte

' ® ™ 文字は知っていますが、.encode / .decode などの側面を理解できません。

では、特殊文字を含むこれらの製品名を Google に投稿できるようにする方法を誰か教えてもらえますか?

== 更新 == MySQL データベースから製品名を取得しています。テーブルはエンコードとして UTF-8 を使用するように設定されています。

4

2 に答える 2

2

試す:

u'Addario EXP11 Coated Bronze Acoustic Guitar Strings, 12-53 
Fender Stop Dreaming, Start Playing™ Affinity P Bass® With Rumble™ 15'

また

unicode('Addario EXP11 Coated Bronze Acoustic Guitar Strings, 12-53 
Fender Stop Dreaming, Start Playing™ Affinity P Bass® With Rumble™ 15')

しかし、それはさておき。Python 2 での Unicode サポートは、多くの場合、厄介な問題です。ユニコードが標準の Python 3 を試すことをお勧めします。

于 2015-06-05T14:55:03.297 に答える
1

Python 3が答えです:)(現在、GoogleはSDKでサポートしています)

于 2016-11-03T18:26:14.533 に答える