Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[Mac OS X] Firefox 3 où sont les bookmarks ???

12 réponses
Avatar
unbewusst.sein
comme j'ai un script Ruby qui me transforme le fichier bookmarks.html de
FF 2 en xml (via tidy) puis en base MySQL, je m'interroge sur la
pérénité du schimiliblick ;-)

où sont passés ces bookmarks avec FF 3 ?

je souhaiterais éviter un export manuel.

ils sont en quel format ? SQLite3 ???

--
Une Bévue

10 réponses

1 2
Avatar
Frederic Bezies
Le 01.07.2008 17:45, Une Bévue a écrit :

comme j'ai un script Ruby qui me transforme le fichier bookmarks.html de
FF 2 en xml (via tidy) puis en base MySQL, je m'interroge sur la
pérénité du schimiliblick ;-)



Ah ?


où sont passés ces bookmarks avec FF 3 ?



Le fichier places.sqlite avec une sauvegarde quotidienne, dans un
fichier en .json.

http://fr.wikipedia.org/wiki/JSON


je souhaiterais éviter un export manuel.

ils sont en quel format ? SQLite3 ???




Oui.



--
Frederic Bezies -
Weblog : http://frederic.bezies.free.fr/blog/
Avatar
unbewusst.sein
Frederic Bezies wrote:

> où sont passés ces bookmarks avec FF 3 ?

Le fichier places.sqlite avec une sauvegarde quotidienne, dans un
fichier en .json.

http://fr.wikipedia.org/wiki/JSON

>
> je souhaiterais éviter un export manuel.
>
> ils sont en quel format ? SQLite3 ???



OK, merci bien, je vais regarder ça de + près...

au lieu de ma transfo html -> xml (via tidy + ruby) il me faudra
implémenter une transfo sqlite3 -> mysql car depuis php l'intérogation
d'une base sqlite me semble nettement + lente qu'avec une base mysql
(pas mesuré).
--
Une Bévue
Avatar
unbewusst.sein
Frederic Bezies wrote:


Le fichier places.sqlite avec une sauvegarde quotidienne, dans un
fichier en .json.



bon, j'ai bien un "places.sqlite" mais il est entiérement vide, même la
structure de la bd n'a pas été créée.

j'ai bien un fichier "bookmarks.json" qui contient des URLs mais il est
dans un sous répertoire de weave (synchro)

bon j'ai aussi un répertoire "bookmarkbackups" avec des backups
journaliers, vieux, au +, de 5 jours :
~/Library/Application
Support/Firefox/Profiles/frp7sg0c.default/bookmarkbackups%> ls -al
-rw-r--r-- 1 yt yt 190824 26 jui 00:40 bookmarks-2008-06-26.json
-rw-r--r-- 1 yt yt 190824 27 jui 11:04 bookmarks-2008-06-27.json
-rw-r--r-- 1 yt yt 190824 28 jui 19:49 bookmarks-2008-06-28.json
-rw-r--r-- 1 yt yt 190824 29 jui 20:52 bookmarks-2008-06-29.json
-rw-r--r-- 1 yt yt 190824 1 jul 03:00 bookmarks-2008-07-01.json
-rw-r--r-- 1 yt yt 190824 2 jul 08:06 bookmarks-2008-07-02.json

j'utilise FF3 sur MacOS X 10.4.11.

mais peut-être que "places.sqlite" dépend de l'état de FF3, je veux
dire, la bd ne serait créée que lorsque je quitte FF3 ?

après vérif, c'est bien le k...
--
Une Bévue
Avatar
Sergio
Une Bévue vient de nous annoncer :

j'utilise FF3 sur MacOS X 10.4.11.

mais peut-être que "places.sqlite" dépend de l'état de FF3, je veux
dire, la bd ne serait créée que lorsque je quitte FF3 ?

après vérif, c'est bien le k...



Sinon, l'extension "My Bookmarks", permet (un peu comme l'ancien
BookmarksHome) permet de récupérer les bookmarks dans une jolie page
HTML.

http://www.catsyawn.net/ma2ten/soft/mybookmarks_doc.html
(c'est en asiatique, mais le lien de tléchargement est visible).

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
Avatar
unbewusst.sein
Sergio wrote:


Sinon, l'extension "My Bookmarks", permet (un peu comme l'ancien
BookmarksHome) permet de récupérer les bookmarks dans une jolie page
HTML.

http://www.catsyawn.net/ma2ten/soft/mybookmarks_doc.html
(c'est en asiatique, mais le lien de tléchargement est visible).



vu, merci, mon système permet de faire une recherche :

http://cjoint.com/data/hcn2IBxnl7.htm

--
Une Bévue
Avatar
unbewusst.sein
Frederic Bezies wrote:


Le fichier places.sqlite avec une sauvegarde quotidienne, dans un
fichier en .json.

http://fr.wikipedia.org/wiki/JSON



la difficulté n'est pas tant dans json, que de connaître la structure de
ce fichier, càd savoir comment il est organisé.

comme je ne m'intéresse qu'à "Barre personnelle", j'ai essayé de ne
prendre que le contenu de ce dossier mais, pour l'instant, ça ne me
ramène pas grand chose.

"Barre personnelle" apparaît trois fois dans ce fichier...
--
Une Bévue
Avatar
SAM
Une Bévue a écrit :
Frederic Bezies wrote:

Le fichier places.sqlite avec une sauvegarde quotidienne, dans un
fichier en .json.

http://fr.wikipedia.org/wiki/JSON



la difficulté n'est pas tant dans json, que de connaître la structure de
ce fichier, càd savoir comment il est organisé.

comme je ne m'intéresse qu'à "Barre personnelle", j'ai essayé de ne
prendre que le contenu de ce dossier mais, pour l'instant, ça ne me
ramène pas grand chose.



ce fichier s'affiche en une seule ligne chez moi
comment y trouves-tu quoi que ce soit dans cet imbroglio ?

"Barre personnelle" apparaît trois fois dans ce fichier...



Tu as 3 boutons-dossiers dans ta barre perso ?

--
sm
Avatar
unbewusst.sein
SAM wrote:

> comme je ne m'intéresse qu'à "Barre personnelle", j'ai essayé de ne
> prendre que le contenu de ce dossier mais, pour l'instant, ça ne me
> ramène pas grand chose.

ce fichier s'affiche en une seule ligne chez moi
comment y trouves-tu quoi que ce soit dans cet imbroglio ?



euh, finalement, c'est fastoche, j'avais une erreur de typo
particulièrement grossière, je retrouve bien tous mes bookmarks
maintenant.

la structure du fichier json est "simple" (mais il y a redondance entre
les IDs et la structure du fichier.

de mémoire :

le fichier json lui-même commence par une Hash (*) qq clés :

title, id, parent, dateAdded, lastModified, type et children

json['children'] est une array, tu reconnais si tu as affaire à un
dossier par type :
type = 'text/x-moz-place-container' => dossier
type = 'text/x-moz-place' => un signet


je suis parvenu à mettre tout cela, à plat, dans une base MySQL.

ce matin, j'essaie de lire la base sqlite (vide même si elle fait 3 MO)
quand FF3 est running, FF3 enregistre cette base en quittant.

* attention je lis ce json à partir de ruby donc les objets js sont
traduits en ruby :

objet (càd {machin:'bidule', chose:'truc'...} => Hash en ruby :
{'machin' => 'bidule', 'chose' => 'truc'...}
array js => array ruby

notez que les dates sont données à la microseconde près, c'est très très
utile )))

en ruby je fais json['dateAdded')/1000000 pour avoir la date en secondes
ensuite comme ma base MySQL est lue par php :
$title->nodeValue=$res ? " Ajouté le ".date('d m y',
$res['dateAdded']).", modifié le ".date('d m y', $res['lastModified']) :
"";

le json est assez verbeux..., bien des choses sont inutiles et
redondantes, il y a pire ce sont les plist Apple...

--
Une Bévue
Avatar
SAM
Une Bévue a écrit :
SAM wrote:

comme je ne m'intéresse qu'à "Barre personnelle", j'ai essayé de ne
prendre que le contenu de ce dossier mais, pour l'instant, ça ne me
ramène pas grand chose.


ce fichier s'affiche en une seule ligne chez moi
comment y trouves-tu quoi que ce soit dans cet imbroglio ?



la structure du fichier json est "simple" (mais il y a redondance entre
les IDs et la structure du fichier.



Le jSon n'est pas compliqué,
c'est la lecture (humaine) de ce fichier en une ligne qui n'est pas
adaptée ;-)

A ce que j'ai compris c'est quasi du XML
(du XML en une ligne ça doit pas être beau à voir non plus)

de mémoire :

le fichier json lui-même commence par une Hash (*) qq clés :

title, id, parent, dateAdded, lastModified, type et children

json['children'] est une array, tu reconnais si tu as affaire à un
dossier par type :
type = 'text/x-moz-place-container' => dossier
type = 'text/x-moz-place' => un signet



ouais mais ce serait indenté ça faciliterait

je suis parvenu à mettre tout cela, à plat, dans une base MySQL.



Mazette !
Je ne te demande pas comment tu as fais (ss doute très simplement en
XMLant du ruby via le PHP qui miraculeusement active le terminal qui va
chercher sur le net qques béquilles javascript ou C ... etc ... etc)


* attention je lis ce json à partir de ruby donc les objets js sont
traduits en ruby :



Bon sang! mais c'est bien sûr ! comment ne pas y avoir pensé ;-)

Pas regardé mais il doit bien y avoir moyen que le php + js trafiquent
ce json vers MySql, comme ça directement.
<http://fr.php.net/manual/fr/ref.json.php>

le json est assez verbeux..., bien des choses sont inutiles et
redondantes, il y a pire ce sont les plist Apple...



Déjà quand il n'y en a qu'un qui code ça peut être prolixe (j'ai cité
qqu'un ?) alors quand tu en regroupes plusieurs ...


--
sm
Avatar
unbewusst.sein
SAM wrote:

Je ne te demande pas comment tu as fais (ss doute très simplement en
XMLant du ruby via le PHP qui miraculeusement active le terminal qui va
chercher sur le net qques béquilles javascript ou C ... etc ... etc)




non, je ne passe pas par xml.

> * attention je lis ce json à partir de ruby donc les objets js sont
> traduits en ruby :

Bon sang! mais c'est bien sûr ! comment ne pas y avoir pensé ;-)

Pas regardé mais il doit bien y avoir moyen que le php + js trafiquent
ce json vers MySql, comme ça directement.
<http://fr.php.net/manual/fr/ref.json.php>



sans doute, mais je remplis la base par ruby et l'interroge par php...

j'ai commencé de regarder places.sqlite, là c'est nettement plus coton
de comprendre comment c'est organisé... aussi je vais, sans doute, me
contenter du json ;-)

et puis, cette base n'est disponible qu'après avoir quitté FF3.
--
Une Bévue
1 2