Firefox-Bookmarks aus Foxmarks anzeigen (JSON-Datei)

Aufgrund eines Kommentars von Steffen zu meinem Beitrag Foxmarks Plugin v2.0.34 für Firefox habe ich mir mal das kleine Python-Script aus dem Foxmarks-Wiki zum Anzeigen der Datei foxmarks.json angeschaut und auch zum Laufen bekommen. Allerdings habe ich es noch ein wenig erweitert, damit man es direkt als (valide) Website ausführen kann (siehe Download).

Beim Anschauen des Quelltextes ist mir dann aufgefallen, dass das Script gar nicht so lang/kompliziert ist, und habe das Ganze zusätzlich in PHP umgesetzt. Da PHP eingebaute JSON-Funktionen beinhaltet (ich benötige nur json_decode), beschränkt sich die Ausgabe der Bookmarks auf ein wenig PHP-Code drumherum. Zusätzlich habe ich dann noch ein kleines Java-Script und ein wenig CSS-Code eingebaut, damit die Bookmarks so aussehen wie hier: XSLT-Datei zum Anzeigen von Firefox-Bookmarks aus Foxmarks.

Download

  • Python-Script

    Enthält auch das benötigte Paket simplejson und kann wie folgt im Apache als Website veröffentlicht werden:

    DirectoryIndex index.py
    SetHandler mod_python
    PythonHandler index
    PythonDebug On
    PythonPath "['/path/to/script'] + sys.path"
  • PHP-Script
    Enthält auch grundlegende CSS-Definitionen und zwei kleine Grafiken für die Ordner.
    Das Script wurde am 06.12.2009 aktualisiert!

Über uns Stefan

Polyglot Clean Code Developer

30 Kommentare

  1. Pingback:XSLT-Datei zum Anzeigen von Firefox-Bookmarks aus Foxmarks » Stefan Macke

  2. Danke für das PHP script. Es funktioniert gut.

  3. Ich habe gerade angefangen ein eigenes PHP-Skript für diesen Zweck zu schreiben, als ich dein Skript fand. Ich habe die beiden mal gemerged und stelle sie hier zur Verfügung. Der Unterschied zwischen dem originalen und meinem sind einige Verbesserungen im Encoding der Links, so dass das ganze XHTML kompatibel ist. Zudem werden (im Firefox) die Icons der Lesezeichen angezeigt (funktioniert im IE nicht).

    Link: http://rapidshare.de/files/39727771/foxmarks-php.zip.html

    Gruss Zueri

  4. Leider funktionierte der Link von Zueri nicht mehr.
    Habe hier nochmal den Code überarbeitet, die Icons werden in eine Datei abgelegt, deren Name aus dem Bookmarknamen (mittels md5 Hash) erzeugt wird. Das funktioniert dann auch im IE. Sollte kein Icon in der Foxmark Datei vorhanden sein, wird es durch das StandardIcon (im zip) verwendet.
    Auch die XHTML konformität habe ich hergestellt.

    http://bilger.info/trash/foxmarksphp.zip

    kannst ja kurz Bescheid geben, dann stellen wir das irgendwo auf ne PHP Skripte Seite oder so.

    MfG
    ice

  5. Von mir aus kein Problem! Kannst das Teil gerne irgendwo hochladen…

  6. Hallo

    Habe das php-script auf meinem lokalen Server ausprobiert.
    Alles OK

    Aber auf dem Server meines Hosters (all-inkl.com) klappt es nicht.
    Fehlermeldung bei Online-Auruf der index.php im Browser:
    Fatal error: Call to undefined function: json_decode() in /www/htdocs/v029217/fox/index.php on line 28

    Bin in PHP nicht wirklich fit. Vielleicht einen kleinen Hinweis, wodran es liegen kann!?

    Danke im Voraus
    Thomas

  7. @Thomas: Da hat dein Hoster wohl das benötigte PHP-Paket für JSON nicht installiert. Vielleicht kannst du ihn per Mail dazu überreden!?

  8. schau mal hier, das ist eine PHP Klasse, die die Funktion ebenfalls umsetzt.

    http://abeautifulsite.net/notebook.php?article=71

  9. hallo,

    klasse idee das scipt und genau das was ich gesucht habe!
    nur fuktioniert es leider nicht, bekomme nicht mehr als eine komplett weisse seite angezeigt 🙁

    cu
    fossybaer

  10. @fossybear: Dann aktivier doch mal die Fehlerausgabe und schau, was schiefläuft. Du kannst z.B. folgende Zeile zu Beginn der PHP-Datei einfügen:

    ini_set("display_errors", "on");
  11. Danke für die Antworten

    Mein Hoster hat meine Seiten noch auf der alten PHP4 Version laufen. Ziehe jetzt um auf PHP5

    Thomas

  12. Hi,

    wie kann ich python installieren?
    über die .htaccess datei funktioniert es bei mir nicht und eine Anleitung habe ich nicht gefunden,..

    Danke 😉

  13. @pat: Das kommt ganz auf deine Distribution an. Unter SUSE nimmst du Yast dafür, unter Debian geht es z.B. einfach mittels

    apt-get install python
  14. Can’t read your website but I’d like to say thanks for the great PHP script.
    Nice work
    Ed

  15. Thanks for the conversion script. It’s very much appreciated.

    Barry
    Dublin, Ireland

  16. Pingback:Photo Pingalerie » Firefox-Addon Foxmarks in Verbindung mit dem eigenen FTP-Server nutzen

  17. @Ice Super, vielen Dank. Wollte mich schon selbst an die Programmierung machen aber habe rechtzeitig dein Skript hier entdeckt. Vielen Dank für die Mühe.

    Tim

  18. Hallo,

    ich würde auch gerne das PHP-Skript verwenden, kriege es aber nicht zum Laufen: Fatal error: Call to undefined function json_decode() in […]/index.php on line 29

    Auf dem Server ist die aktuelle PHP-Version installiert. Woran kann der Fehler noch liegen?

    Danke & viele Grüße,
    Julian

  19. @Julian: Du hast bestimmt das benötigte PHP-Modul JSON nicht aktiviert. Schau doch mal mit php_info(); nach.

  20. Pingback:原來 Foxmarks 用的儲存格式叫做 JSON... « 無聊人的無聊故事 - 站長有兩隻,搭訕前請先認明

  21. Hallo,
    Vielen Dank für das Script. Habe noch 2 kleinere Verbesserungen an der Version von „ice“ angebracht: Die Icons sind nun vertikal mittig zum Bookmarktext, auch habe ich die Icons durch welche aus dem Tango!-Projekt ausgetauscht, so dass alle 16×16 haben und alles schon bündig bleibt.

    Des weiteren noch die Schrift auf Sans-Serif umgestellt, aber das kann man ja umstellen wenn es einem nicht gefällt.

    Will euch das nicht vorenthalten, falls vom Originalautor gestattet.

    Link: http://files.schreibtischtat.de/foxmarksphp_cjedit.zip

  22. Hi,
    bei mir funktioniert das PHP Skript nicht mehr … so wie es aussieht, wurde intern die JSON Struktur geändert. Kannst Du das bestätigen?

  23. @Max: Ja, scheint so zu sein. Werde mich mal bei Zeiten drum kümmern.

  24. @Stefan: Hattest Du schon Zeit & Lust da mal reinzuschauen ?

  25. @Tom: Nein, bislang noch keine Zeit. Das kann noch dauern 🙁

  26. Habe eine Lösung gefunden:

    PGNvZGU+DQokY29udGVudCA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRib29rbWFya3NGaWxlKTsNCiRjb250ZW50ID0gc3RyX3JlcGxhY2UoIixdIiwiXSIsJGNvbnRlbnQpOw0KJGpzb24gPSBqc29uX2RlY29kZSgkY29udGVudCk7DQo8L2NvZGU+

    Die mittlere Zeile ist die Änderung. Firefox packt da wohl zu viele Kommas rein.

  27. hmmm, wieso hat ist der code verschlüsselt worden???
    Neuer versuch:
    $content = file_get_contents($bookmarksFile);
    $content = str_replace(„,]“,“]“,$content); //Fix for latest Firefox
    $json = json_decode($content);

    mit der einen zusätzlichen Zeile funktioniert es wieder.

  28. Bin eher Computerlaie, möchte aber mein JSON Backup wiederherstellen nach einem COmputer Totalcrash.
    Wie geht das jetzt in Einzelschritten?
    Wäre wirklich dankbar

    Hermann

  29. Bei mir geht das Script leider auch schon länger nicht mehr. Gibt es überhaupt noch Hoffnung, das dies jemals wieder angepasst werden kann?
    Wäre wirklich toll!

  30. Pingback:Michels Blog » Foxmarks FireFox AddOn «

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax