Die App
Aus YAZIO importieren
Ein YAZIO-Tagebuch mit dem Open-Source-Werkzeug yazio-exporter in openplate übertragen, und was dabei übernommen wird und was nicht
Diese Seite wurde maschinell aus der englischen Dokumentation übersetzt.
Wenn du ein Ernährungstagebuch in YAZIO geführt hast und es zu openplate migrieren möchtest, befolge diese Schritte. Installiere ein Exportwerkzeug, führe vier Befehle aus und wähle die exportierten Dateien dann in openplate auf dem Bildschirm Daten & Backup aus. Außer dem Eintippen von Befehlen in ein Terminal brauchst du keine Entwicklererfahrung.
Jedes in YAZIO protokollierte Lebensmittel landet in openplate an dem Tag und in der Mahlzeit, an dem du es eingetragen hast, wobei die Makronährstoffe auf die verzehrte Menge skaliert werden. Deine Wiegeeinträge können ebenfalls übernommen werden. Lies vor dem Import den Abschnitt „Was übernommen wird und was nicht“ weiter unten, da sich einige Werte von der Darstellung in YAZIO unterscheiden.
Was du benötigst
- Deine E-Mail-Adresse und dein Passwort für YAZIO.
- Ein Rechner, auf dem du ein Terminal öffnen und Python installieren kannst. Ein Telefon eignet sich nicht für den Exportschritt. Du kannst die Dateien danach auf dein Telefon übertragen, falls du openplate dort nutzt.
- Python 3.11 oder neuer.
- openplate in einem Browser geöffnet, auf demselben Gerät oder auf einem Gerät, auf das du die Dateien übertragen kannst.
Exportiere dein Tagebuch aus YAZIO
openplate kommuniziert nicht direkt mit YAZIO. Du führst ein separates Open-Source-Befehlszeilenwerkzeug namens yazio-exporter aus. Es liest dein YAZIO-Tagebuch aus und schreibt es in Dateien auf deinem Rechner.
yazio-exporter ist ein Drittanbieter-Werkzeug. openplate und YAZIO haben es nicht entwickelt, und niemand aus dem openplate-Projekt pflegt es. Es funktioniert möglicherweise nicht mehr, wenn YAZIO seine App ändert. Das Projekt befindet sich unter github.com/aleksandr-bogdanov/yazio-exporter.
- Installiere Python 3.11 oder neuer, falls du es noch nicht hast. Die Download-Seite auf python.org enthält Installationsprogramme für Windows, macOS und Linux.
- Öffne ein Terminal und installiere das Exportwerkzeug:bash
pip install yazio-exporter
- Melde dich an und exportiere deine Tage, Produkte und dein Gewicht:bash
yazio-exporter login you@example.com your-password yazio-exporter days yazio-exporter products yazio-exporter weightErsetze
you@example.comundyour-passworddurch deine YAZIO-Anmeldedaten. Dieser Befehl verbindet sich ausschließlich mit dem Server von YAZIO,yzapi.yazio.com. Bei diesem Schritt wird nichts an openplate übertragen.Der Befehl
loginspeichert ein Token in einer Datei namenstoken.txtin deinem aktuellen Verzeichnis. Die weiteren Befehle nutzen diese Datei, damit sie nicht erneut nach deinem Passwort fragen. Dein System erstellt diese Datei so, dass sie nur für dein Benutzerkonto lesbar ist, sie ist jedoch nicht verschlüsselt. Löschetoken.txt, sobald du den Export abgeschlossen hast.Dein Passwort bleibt im Befehlsverlauf deines Terminals, da
yazio-exporteres im Klartext auf der Befehlszeile statt über eine verdeckte Eingabeaufforderung entgegennimmt. Unter macOS und Linux hast du zwei Möglichkeiten, das zu verhindern: Setze ein Leerzeichen vor den Befehl, falls deine Shell Zeilen mit vorangestelltem Leerzeichen ignoriert, oder führe direkt danachhistory -caus, um den Verlauf deiner Sitzung zu leeren. Unter Windows wird der Verlauf beim Schließen der PowerShell nicht gelöscht. Das PowerShell-Modul PSReadLine speichert eine dauerhafte Verlaufsdatei unter%APPDATA%\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt. Öffne diese Datei anschließend und lösche die Zeile mit deinem Passwort.
- Die Dateien suchen.
yazio-exporter daysschreibtdays.json.yazio-exporter productsschreibtproducts.json.yazio-exporter weightschreibtweight.json. Die Dateien liegen in dem Verzeichnis, in dem du die Befehle ausgeführt hast. Du benötigstdays.jsonundproducts.json.weight.jsonist optional und übernimmt deine Wiegeeinträge.
In openplate importieren
- Öffne openplate und gehe zu Einstellungen, dann zu Daten & Backup.
- Wähle unter Aus YAZIO importieren die Option Wähle die YAZIO-Dateien aus.
- Wähle im Dateidialog
days.jsonundproducts.jsonzusammen aus, und auchweight.json, falls du deine Wiegungen übernehmen möchtest, und bestätige dann deine Auswahl. - openplate liest die Dateien auf deinem Gerät und zeigt eine Vorschau. Sie enthält die Anzahl der Einträge, die hinzugefügt werden, den abgedeckten Zeitraum in Tagen, den ersten und letzten Tag sowie alle übersprungenen Elemente samt Grund. Falls einige dieser Tage bereits Einträge in deinem openplate-Tagebuch enthalten, zeigt die Vorschau, wie viele es sind. Nach dem Import enthalten diese Tage sowohl deine eigenen Einträge als auch die importierten. Bei
weight.jsonzeigt die Vorschau außerdem, wie viele Wiegungen hinzugefügt werden, sowie das erste und letzte Gewicht in Kilogramm. In dein Tagebuch wird noch nichts geschrieben. - Prüfe die Vorschau und wähle dann Zu meinem Tagebuch hinzufügen. Wähle Abbrechen, um ohne Änderungen abzubrechen.
- openplate bestätigt, wie viele Einträge und Wiegungen importiert wurden. Öffne dein Tagebuch und überprüfe einen Tag, an den du dich erinnerst.
Die Dateien bleiben auf deinem Gerät. openplate liest sie lokal in deinem Browser und lädt sie nicht auf einen Server hoch.
Was übertragen wird und was nicht
- Jedes Lebensmittel wird zu einem eigenen Eintrag, an dem Tag und in der Mahlzeit, wie du es in YAZIO eingetragen hast.
- Ein Nährstoff, den YAZIO nicht führt, wird in openplate als unbekannt angezeigt, nie als null. YAZIO hat für viele Lebensmittel keinen Ballaststoffwert. In diesem Fall kennzeichnet openplate Ballaststoffe als unbekannt statt als null.
- openplate behandelt YAZIOs Kohlenhydratwert so, als enthielte er bereits keine Ballaststoffe, nach EU-Stil, und zieht Ballaststoffe nicht noch einmal ab. Niemand weiß mit Sicherheit, welchen Stil YAZIO verwendet. Falls YAZIOs Angabe Ballaststoffe tatsächlich enthält, also nach US-Stil, fallen deine Netto-Kohlenhydrate in openplate höher aus, als sie wirklich sind, aber niemals niedriger. Das ist die sicherere Abweichung für ein Low-Carb-Tagebuch.
- Eine Menge in Millilitern wird mit der gleichen Zahl in Gramm gewertet. openplate speichert Gewichte ausschließlich in Gramm.
- Schnelleinträge werden übersprungen. Wenn du in YAZIO Kalorien ohne Lebensmittelzuordnung einträgst, enthält der Eintrag keine Makronährstoffdaten, die openplate lesen könnte.
- Ein Eintrag wird übersprungen, wenn das zugehörige Lebensmittel in
products.jsonfehlt. Das geschieht meist, wenn die Datenbank von YAZIO das Lebensmittel nicht mehr enthält und der Export den Tagebucheintrag daher ohne Nährstoffe aufführt. Ein Lebensmittel, das du aus deinem YAZIO-Tagebuch gelöscht hast, wird nicht übersprungen, weil es im Export gar nicht erst enthalten ist. - Das Gewicht eines Rezepts ergibt sich aus der Summe seiner Zutaten. Ein Rezept ohne Zutatenliste in der Exportdatei wird übersprungen. Rezeptwerte sind der unsicherste Teil dieses Imports, prüfe ein importiertes Rezept daher gegen YAZIO.
- Jede Wiegung wird zu einem Eintrag in deinem Gewichtsprotokoll. Der Export wiederholt dein letztes Gewicht an jedem Tag bis zur nächsten Wiegung. openplate übernimmt einen Tag nur dann, wenn sich sein Gewicht vom Vortag unterscheidet. Zwei aufeinanderfolgende Wiegungen mit exakt demselben Gewicht werden daher als ein einziger Eintrag importiert.
- openplate liest die Werte in
weight.jsonals Kilogramm. Der Export gibt keine Einheit an. Wenn du dich in YAZIO in Pfund wiegst, prüfe das erste und letzte Gewicht in der Vorschau, bevor du bestätigst. openplate überspringt und zählt jeden Wert unter 20 oder über 350. - Ein Tag, der in openplate bereits eine Wiegung enthält, behält diese. Der Import ersetzt niemals ein Gewicht, das du in openplate eingetragen hast. Die Vorschau zeigt die Anzahl dieser Tage.
- Importierst du dieselben Dateien erneut, aktualisiert dies bestehende Einträge, anstatt Duplikate anzulegen. Diese Aktion überschreibt alle manuellen Änderungen, die du an einem importierten Eintrag oder einer Wiegung vorgenommen hast.
Einen Import entfernen
Um einen Import rückgängig zu machen, öffne Daten & Backup. Wenn importierte Einträge vorhanden sind, zeigt das Seitenende Aus YAZIO importierte Einträge mit der Anzahl der Tagebucheinträge und Wiegungen aus YAZIO an. Wähle YAZIO-Einträge entfernen und bestätige anschließend. openplate entfernt jeden Eintrag und jede Wiegung aus dem Import, einschließlich aller, die du danach bearbeitet hast. Es behält alles, was du selbst in openplate erfasst hast. Eine Wiegung, die du an einem Tag mit einem importierten Wert einträgst, ersetzt diesen und gilt als deine eigene. Wenn du Sync verwendest, entfernen deine anderen Geräte die importierten Einträge ebenfalls.
Wenn etwas schiefgeht
openplate prüft die Dateien, bevor es eine Vorschau anzeigt. Das bedeuten die einzelnen Meldungen:
- "Eine dieser Dateien ist kein gültiges JSON. Wähle die days.json und products.json, die der Exporter geschrieben hat." Eine der Dateien ist kein gültiges JSON. Wähle die Dateien genau so aus, wie
yazio-exportersie erstellt hat, ohne Bearbeitungen. - "Eine dieser Dateien ist kein YAZIO-Export. Wähle nur days.json, products.json und, falls du deine Wiegungen möchtest, weight.json." Eine Datei ist gültiges JSON, enthält aber keine YAZIO-Exportdaten. Prüfe, ob du die richtigen Dateien ausgewählt hast.
- "Du hast zwei Dateien derselben Art ausgewählt. Wähle eine days.json und eine products.json." Du hast doppelte Dateien ausgewählt, etwa zwei Kopien von
days.jsonoder vonweight.json. Wähle von jeder Datei eine aus. - "days.json fehlt. Wähle sie zusammen mit products.json aus." Du hast nur
products.jsonausgewählt. Wähle beide Dateien zusammen aus. - "products.json fehlt. Wähle sie zusammen mit days.json aus." Du hast nur
days.jsonausgewählt. Wähle beide Dateien zusammen aus.
Wenn die Vorschau übersprungene Einträge meldet, findest du oben unter "Was übertragen wird und was nicht" weitere Details.