私はツイートのテキストを取得するシンプルなpythonスクリプトを持っています。Python 3のつぶやきからemojisをデコードする
しかし、emojisは何とかエンコードされているので、出力は\ xf0 \ x9f \ x90 \ xa3のようになります。
この出力から何が絵文字であるかを調べる方法はありますか?
私はツイートのテキストを取得するシンプルなpythonスクリプトを持っています。Python 3のつぶやきからemojisをデコードする
しかし、emojisは何とかエンコードされているので、出力は\ xf0 \ x9f \ x90 \ xa3のようになります。
この出力から何が絵文字であるかを調べる方法はありますか?
オッズはUTF-8でエンコードされています(残りのデータとともに、ASCIIテキストはASCIIとUTF-8で同じように表示されます)。
あなたはb'\xf0\x9f\x90\xa3'
のようなbytes
を持っている場合は、あなただけ行うだろう:あなたはstr
としてそれを受け取った場合
b = b'\xf0\x9f\x90\xa3'
txt = b.decode('utf-8')
を、これはおそらくlatin-1
と間違えデコードまたは他のコード・ページで、これだけ元に戻しますそれとUTF-8でやり直し:0x1f423の序数を取得します
b = '\xf0\x9f\x90\xa3'
txt = b.encode('latin-1').decode('utf-8')
# If it's not latin-1, could be sys.getdefaultencoding()
(私のコンピュータはそれを表示することができない、または私はここでそれを追加していると思います)、ほとんどのために正しい範囲にあります絵文字。 As noted in the comments、unicodedata
は、文字をHATCHING CHICK
として報告します。
'import unicodedata; print(unicodedata.name(b "\ xf0 \ x9f \ x90 \ xa3" .decode( 'utf-8'))) 'は' HATCHING CHICK'と言う。あなたのスクリプトが何をしているのかを知らなくても、Istのことは分かりません。 – mata
@mata彼はツイートのテキストを得ているように聞こえ、emojisは '\ xf0 \ x9f \ x90 \ xa3'として表示されます。彼は実際に何が絵文字であるかを知りたがっています... – Aaron