Konvertierung von JSON-ifizierten DateTimeField aus MongoDB in ein lesbares Format mit Python
Автор: vlogize
Загружено: 2025-12-18
Просмотров: 0
Описание:
Erfahren Sie, wie Sie ein `JSON-ifiziertes DateTimeField` aus MongoDB mit Python in eine menschenlesbare Zeichenkette umwandeln, ohne MongoEngine-Klassen zu verwenden.
---
Dieses Video basiert auf der Frage https://stackoverflow.com/q/62259072/ gestellt von dem Nutzer 'A01XP' ( https://stackoverflow.com/u/7883884/ ) sowie auf der Antwort https://stackoverflow.com/a/62259300/ bereitgestellt von dem Nutzer 'JenilDave' ( https://stackoverflow.com/u/12056821/ ) auf der Website 'Stack Overflow'. Vielen Dank an diese großartigen Nutzer und die Stackexchange-Community für ihre Beiträge.
Besuchen Sie diese Links, um den Originalinhalt und weitere Details zu sehen, z. B. alternative Lösungen, aktuelle Entwicklungen zum Thema, Kommentare, Versionsverlauf usw. Der ursprüngliche Titel der Frage lautete beispielsweise: Python MongoEngine parse JSON-ified DateTimeField as returned from database
Außerdem steht der Inhalt (außer Musik) unter der Lizenz CC BY-SA https://meta.stackexchange.com/help/l...
Der ursprüngliche Fragenbeitrag steht unter der Lizenz 'CC BY-SA 4.0' ( https://creativecommons.org/licenses/... ), und der ursprüngliche Antwortbeitrag steht unter der Lizenz 'CC BY-SA 4.0' ( https://creativecommons.org/licenses/... ).
Falls Ihnen irgendetwas auffällt oder Unstimmigkeiten bestehen, schreiben Sie mir bitte an vlogize [AT] gmail [DOT] com.
---
Konvertierung von JSON-ifiziertem DateTimeField aus MongoDB in ein lesbares Format mit Python
Bei der Arbeit mit Datenbankoperationen stößt man häufig auf verschiedene Datenformate, die für das menschliche Verständnis konvertiert werden müssen. Ein solches Format ist das DateTimeField von MongoDB, das in einem JSON-Format wie folgt dargestellt werden kann:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Hier wird der Zeitstempel in Millisekunden seit der Epoche angegeben, wodurch er als große Ganzzahl erscheint. Es ist wichtig zu wissen, wie man diesen Zeitstempel in ein lesbares Datumsformat umwandelt, insbesondere beim Rendern von Daten für eine Webanwendung (z. B. in einem Jinja2-Template). In diesem Blogbeitrag zeigen wir, wie man diesen Zeitstempel effizient mit Python konvertiert.
Das Problem verstehen
Sie haben ein DateTimeField in einer Modellklasse mit MongoEngine definiert, und nachdem Sie ein Dokument abgefragt haben, erhalten Sie eine JSON-ifizierte Ausgabe, in der DateTimeField als Ganzzahl mit Millisekundenpräzision dargestellt wird.
Die Herausforderung besteht darin, diese Ganzzahl in ein Standard-Datum- und Zeitformat umzuwandeln, ohne dabei MongoEngine-Klassen zu verwenden. Möglicherweise haben Sie bereits Methoden wie datetime.utcfromtimestamp() ausprobiert und sind auf Fehler gestoßen, weil das Format des Zeitstempels nicht stimmte.
Lösung: Umwandlung des Millisekunden-Zeitstempels
Schritt-für-Schritt Anleitung
So können Sie einen 13-stelligen Millisekunden-Zeitstempel mit Python in ein lesbares Datumsformat konvertieren:
Importieren Sie die benötigten Bibliotheken: Importieren Sie das Modul datetime, um Datum- und Zeitoperationen durchzuführen.
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Speichern Sie den Zeitstempel: Legen Sie den Millisekunden-Zeitstempel in einer Variable ab. Zum Beispiel:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Konvertieren Sie den Zeitstempel in ein Datetime-Objekt: Da der Zeitstempel in Millisekunden angegeben ist, müssen Sie ihn durch 1000 teilen, um Sekunden zu erhalten. Verwenden Sie die Methode fromtimestamp():
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Formatieren Sie das Datetime-Objekt: Nutzen Sie die Methode strftime(), um den Zeitstempel als menschenlesbare Zeichenkette darzustellen. Zum Beispiel im Format JJJJ-MM-TT SS:MM:SS:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Der komplette Code sieht so aus:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
Was Sie erwarten können
Wenn Sie diesen Code ausführen, wird folgender menschenlesbarer Zeitstempel ausgegeben:
[[Siehe Video, um diesen Text oder Codeausschnitt anzuzeigen]]
So können Sie ganz einfach ein JSON-ifiziertes DateTimeField von MongoDB in ein benutzerfreundliches Format umwandeln.
Fazit
Solche Konvertierungen sind in der modernen Webentwicklung sehr wertvoll, da Anwendungen häufig Datum und Uhrzeit in einer für Benutzer verständlichen Weise anzeigen müssen. Mit den in diesem Beitrag beschriebenen Schritten können Sie lange Ganzzahl-Zeitstempel aus Ihren MongoDB-Abfragen effizient in formatierte Zeichenketten umwandeln — und das ganz ohne MongoEngine-Klassen.
Beim nächsten Mal, wenn Sie auf ein JSON-ifiziertes DateTimeField in Ihren MongoDB-Anwendungen stoßen, wissen Sie genau, wie Sie es handhaben können.
Повторяем попытку...
Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: