Das Speichern eines langen HTML-Strings in der SQLite-Datenbank führt zu einem unbekannten Fehler

Ich speichere einige HTML in einer SQLite3-Datenbank in Python.

Wenn ich gehe, um einige HTML in meine SQL-Tabelle einzufügen, bekomme ich einen Fehler, dass ich nicht verstehe was falsch ist und was noch wichtiger ist, wie man das Problem beheben kann.

Fehlerstring:

Ausnahme Allgemein: Sie dürfen keine 8-Bit-Bytestringe verwenden, es sei denn, Sie verwenden eine text_factory, die 8-Bit-Bytestrings interpretieren kann (wie text_factory = str). Es wird dringend empfohlen, dass Sie stattdessen einfach Ihre Anwendung auf Unicode-Strings umstellen.

Der HTML-String, den ich in die Tabelle stecke, ist ziemlich lang (ca. 700 Zeichen lang).

Irgendeine Idee was ist falsch und wie kann ich das beheben?

One Solution collect form web for “Das Speichern eines langen HTML-Strings in der SQLite-Datenbank führt zu einem unbekannten Fehler”

Wenn man die Antwort auf diese Frage betrachtet , sieht es so aus, als ob Sie versuchen, HTML mit Zeichen einzufügen, die nicht auf ASCII abbilden. Wenn du unicode(my_problematic_html) wirst du wahrscheinlich mit einem UnicodeEncodingError unicode(my_problematic_html) . In diesem Fall möchten Sie Ihre problematische String-Darstellung auf Unicode durch Aufruf decode :

 my_unicoded_html = my_problematic_html.decode("utf-8") 

Und dann schreibe my_unicoded_html in die Datenbank.

Du willst Unicode in Python komplett entmystifiziert lesen.

* Bitte beachten Sie, dass Ihr HTML in einem anderen Codec (Format? … charset?) Als utf-8 codiert werden kann . latin-1 ist auch eine gute Vermutung, wenn Sie auf Windows sind (oder wenn das HTML von einem Windows-Rechner sein könnte).

  • Best Practices für Python UnicodeDecodeError
  • Pandas und Unicode
  • Verarbeiten von nicht-englischen Text
  • Was bedeutet 'du' in einer Liste?
  • Wie man mit Unicode-String in URL in python3 umgehen?
  • Python isdigit () function return true für nicht-stelliges Zeichen u '\ u2466'
  • Python String Cleanup + Manipulation (akzentuierte Zeichen)
  • Python, um in UTF8 auf Windows XP mit der Konsole zu drucken
  • Warum gibt Python 2's raw_input die Unicode-Strings aus?
  • Wie kann ich verhindern, dass str Unicode-Zeichen als Hex-Codes kodiert?
  • Python-Unicode-Codierung
  • Python ist die beste Programmiersprache der Welt.