Warnung ausgelöst durch Einfügen von 4-Byte-Unicode in mysql

Schau dir folgendes an:

/home/kinka/workspace/py/tutorial/tutorial/pipelines.py:33: Warning: Incorrect string 
value: '\xF0\x9F\x91\x8A\xF0\x9F...' for column 't_content' at row 1
n = self.cursor.execute(self.sql, (item['topic'], item['url'], item['content']))

Die Saite'\xF0\x9F\x91\x8Aist eigentlich ein 4-Byte-Unicode:u'\U0001f62a'. Der Zeichensatz von mysql ist utf-8, aber das Einfügen von 4-Byte-Unicode schneidet die eingefügte Zeichenfolge ab. Ich habe nach einem solchen Problem gegoogelt und festgestellt, dass mysql unter 5.5.3 keinen 4-Byte-Unicode unterstützt, und leider ist meins 5.5.224. Ich möchte den MySQL-Server nicht aktualisieren, daher möchte ich nur den 4-Byte-Unicode in Python filtern. Ich habe versucht, einen regulären Ausdruck zu verwenden, bin jedoch gescheitert. Also, irgendeine Hilfe?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage