Lesezeichen als json Datei mit Befehl sichern

  • Hallo Zusammen,

    gibt es Möglichkeit dass man Firefox Lesezeichen mit Befehl (CMD oder PowerShell) als json Datei auf Windows sichern und importieren?

    Vielen Dank
    Mit freundliche Grüßen

  • Das kannst du doch mit dem Firefox direkt machen über die Lesezeichenverwaltung.

    Chromebook Lenovo IdeaPad Flex 5 - chromeOS 122 (Stable Channel) - Linux Debian Bookworm: Firefox ESR 115.8.0 und Firefox Nightly, Beta und Main Release (Mozilla PPA), Android 13: Firefox Nightly und Firefox (Main Release)

    Smartphone - Firefox Main Release, Firefox Nightly, Firefox Klar (Main Release)

  • Hallo AngelOfDarkness,

    vielen Dank von Antwort. Ich weis, aber ich möchte wenn Benutzer Firefox beendet, automatisch Lesezeichen als json Datei in User Profile gespeichert werden und wenn Firefox startet, automatisch importiert werden.
    Ich finde nur nicht wie muss ich sqlit3.exe benutzen dass ich von places.sqlite Datei Lesezeichen als json exportieren/importieren.

    Oder Vielleicht hat jemand Lösung dass man über .cfg oder .css Datei machen kann.

    Mit freundliche Grüßen

  • Als bookmarks.html kannst du den Firefox per about:config bzw. über die user.js anweisen ein automatisches Backup im Profil bzw. auch an einem anderen Ort zu erstellen : https://www.camp-firefox.de/forum/viewtopi…094876#p1094876
    Ob und wie man das ggf. als json auch kann, da bin ich leider überfragt.
    Aber, ich meine, Firefox legt automatisch nach Änderungen der Lesezeichen, eine Sicherung als json im Order /bookmarkbackups ab.

    Chromebook Lenovo IdeaPad Flex 5 - chromeOS 122 (Stable Channel) - Linux Debian Bookworm: Firefox ESR 115.8.0 und Firefox Nightly, Beta und Main Release (Mozilla PPA), Android 13: Firefox Nightly und Firefox (Main Release)

    Smartphone - Firefox Main Release, Firefox Nightly, Firefox Klar (Main Release)

  • Unter Bibliothek-Lesezeichen-Lesezeichen verwalten findet sich der Punkt importieren und sichern. Die Sicherung erfolgt als .json Datei. Wie man das automatisieren kann weiß ich leider nicht.

    MfG
    Geldhügel

  • Du kannst deine jeweiligen Lesezeichen beim Beenden von Firefox in einem frei anzugebenden Ordner/alternativ auch auf einem eingehängten Speicherstick, auf einer externe Festplatte, etc. als .html-Datei automatisch speichern lassen..
    Tippe about:config in die Adresszeile, bestätige die Abfrage mit "Ja, ich werde vorsichtig sein",
    Tippe nun browser.bookmarks.autoExportHTML in die Filterzeile und stelle den Schalter auf true
    Sollte es keinen Schalter geben, erstelle einen neuen Schlüssel vom Typ Boolean via Rechtsklick in einem freien Feld des about:config-Fensters.
    Erstelle einen weiteren Schlüssel, diesmal vom Typ String, mit dem Namen browser.bookmarks.file, als Wert gebe einen Pfad (nach diesem Schema: C:\Programme\Mozilla Firefox\Standardpfad\bookmarks.html) zu dem Ort ein, an dem die Datei gespeichert werden soll.
    Nun hast du immer eine aktuelle Liste deiner Lesezeichen..
    Solltest du mehrere Profile (z.B. eins für den Beruf, eins für Online-Banking etc. etc.) nutzen, muss der Speicher-Pfad natürlich leicht korrigiert werden, sonst würde die Sicherung jeweils überschrieben werden, was unter Umständen nicht wünschenswert ist.

  • Boersenfeger

    Dies weiss der TE bereits seit Beitrag #4 ;)

    Chromebook Lenovo IdeaPad Flex 5 - chromeOS 122 (Stable Channel) - Linux Debian Bookworm: Firefox ESR 115.8.0 und Firefox Nightly, Beta und Main Release (Mozilla PPA), Android 13: Firefox Nightly und Firefox (Main Release)

    Smartphone - Firefox Main Release, Firefox Nightly, Firefox Klar (Main Release)

  • Das ist die AutoCofig-Datei:

    In Zeile 12 steht der Pfad zur json-Datei. Wenn das Importieren klappt, wird die Datei danach gelöscht, andernfalls erscheint eine Fehlermeldung. Wenn das Exportieren nicht funktioniert, kommt keine Fehlermeldung; daran arbeite ich noch.

    Zum Ausführen von AutoConfig befindet sich im Installationsordner im Unterordner \defaults\pref eine js-Datei, die den Namen der AutoConfig-Datei enthält. Wenn du Fx 63 verwendest, muss dort auch diese Zeile stehen:

    Code
    pref("general.config.sandbox_enabled", false);

    Bei Fx 60esr ist das nicht notwendig.


  • Wenn das Importieren klappt, wird die Datei danach gelöscht, andernfalls erscheint eine Fehlermeldung. Wenn das Exportieren nicht funktioniert, kommt keine Fehlermeldung; daran arbeite ich noch.

    Was ist, wenn ich erstmal nur exportieren will? Reicht es, im Skript etwas auszukommentieren? Wenn ja, was? (Mir ist das Konzept der Sicherung in HTML-Dateien bekannt.)

    Ich habe Probleme mit einigen Favicons und wollte zum Testen genau das tun. (Und nach weiteren Zwischenschritten mit dem separaten Skript aus dem anderen Thread später wieder importieren.)


  • Was ist, wenn ich erstmal nur exportieren will? Reicht es, im Skript etwas auszukommentieren? Wenn ja, was?

    Diesen Teil auskommentieren:

    Code
    BookmarkJSONUtils.importFromFile(path, {replace: true})
                .then(
                  () => OS.File.remove(path),
                  () =>
                    setTimeout(() => {
                      let window = Services.wm.getMostRecentWindow('navigator:browser');
                      window.alert("Das Importieren der Lesezeichen ist fehlgeschlagen.");
                    }, 1000)
                );
  • Hallo aborix,

    vielen Dank, alles hat funktioniert.
    Kannst du bitte nur mir sagen, wie kann ich diese Pfad für jede Benutzer, automatisch UserName rein schreiben?
    const path = "C:\\Users\\%UserName\\Download

    Vielen Dank

  • Ersetze

    Code
    const path = "C:\\Users\\BenutzerA\\Downloads\\bookmarks.json";

    durch

    Code
    const path = OS.Path.join(OS.Constants.Path.homeDir, "Downloads", "bookmarks.json");

    oder

    Code
    const path = OS.Constants.Path.homeDir + "\\Downloads\\bookmarks.json";
  • Ich habe es mit einem unschönen Trick doch geschafft. Das Schließen lässt sich durch das Öffnen eines unsichtbaren modalen Fensters verzögern. Wenn das Exportieren nicht funktioniert, kommt nun eine Fehlermeldung.