カレンダー

04 | 2017/05 | 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -

最近の記事

月別アーカイブ

カテゴリー

ユーザータグ

最近のコメント

プロフィール

run800m

Author:run800m
元・陸上競技の800m選手。
好きな食べ物はねぎともやし。

専門は機械工学・ロボティクス
興味は経済・経営・生産・心理
・地理・プログラミング・性

QLOOKアクセス解析
フィードメーター - 他人の日記を見るのか? ver.BLOG

QRコード

QR

RSS

はてなRSSに追加
livedoor Readerに追加
My Yahoo!に追加
Googleに追加
goo RSSリーダーに追加
Bloglinesに追加
Technoratiに追加
newsgatorに追加
Powered by SEO対策 RSSプラス

ブログ内検索

リンク

このブログをリンクに追加する

気まぐれ広告

ブログ内容を反映するらしい。
ホントか!?

他人の日記を見るのか? ver.BLOG
デジモノ好きのたわいもない記録 デジタルライフ
スポンサーサイト
このエントリーを含むはてなブックマーク FC2ブックマーク この記事をlivedoorクリップ! Yahoo!ブックマークに登録 Buzzurlにブックマーク
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


最近の記事を見る

(2010/02/22)

QLOOKの解析タグのカスタマイズに新機能 (2009/05/02)

CREATIVE ZEN その11(ZEN MX発売) (2009/04/30)

あらゆるコネクタの埃(ホコリ)対策 (2009/03/31)

カテゴリごとにブログのデザインを替える方法 (2009/02/28)

T-falのIH鍋を買いました (2009/01/31)

ZoneAlarmフリー版のいらない右クリックメニューを消す方法 (2008/12/15)

CREATIVE ZEN その10(右クリックメニューを消す方法) (2008/12/12)

Spybotの右クリックメニューを消す方法 (2008/12/11)

ブログのカテゴリ分けを使いこなす (2008/11/21)


カテゴリ:スポンサー広告

Firefox 3のブックマークを解析してみた
このエントリーを含むはてなブックマーク FC2ブックマーク この記事をlivedoorクリップ! Yahoo!ブックマークに登録 Buzzurlにブックマーク
今さらな話題ですが、ついにFirefoxを2.0系から3.0系に切り替えました。

以前、公開直後にいじってみた記事も書いたんですが、その時はサブPCで導入した話で、今回はやっとメインPCの方でも導入した訳です。

メインPCのブラウザが使えなくなると困るので、アドオンとかが3.0に対応し、初期の不具合なんかが対処されるまで慎重に見ていたんですが、一週間ほど前から自動更新にも3.0系への更新が表示されるようになりましたし、そろそろいいかと思って導入しました。

一応「自動更新での不具合」が発生する可能性もあると思ったので、自動更新の表示が始まってから1週間待ちました。

もちろんプロファイルのバックアップと、アドオンの一覧のメモも忘れずにやっておきましたが、ここまで慎重に行ったおかげで、何も問題なく自動更新で3.0へと切り替えが完了しました。

サブPCの時にはウィンドウが表示されなくなり、やむなく新規プロファイルからやり直しになったので警戒していたんですが、杞憂に終わって良かったです。

ちなみにWindows XPのSP3(Service Pack 3)の導入も、自動更新に表示されるようになったので、つい最近導入しました。

こちらも一応バックアップなどをとってから行いましたが、何の問題もおきなかったというか、普段の修正パッチなどの更新とそれほど変わりありませんでした。

SP2の時のような大きな変化もありませんし、パフォーマンスが向上したのかどうなのか正直よくわかりませんね。



さて、そんな訳で私も晴れてFirefox 3ユーザーとなった訳ですが。

「フォルダ管理のデータを使って、自動的に全階層のフォルダ名をタグとしてつけてくれるアドオンできないかな。」と、以前の記事で書いたのですが、どうやらまだ存在していないようです。(※コメントで存在することを教えてもらいました!)

無いなら作るしかないかと、さっそくFirefoxのブックマークについて色々と調べてみました。

ただ、Firefoxのアドオンは作ったことがないので、とりあえずブックマークのインポート・エクスポートを使って、エクスポート⇒外部で変換⇒インポートで上書きという過程でいじってみようと考えました。

ちなみにブックマークのエクスポート・インポートは、
「ブックマーク(B)」→「ブックマークの管理」→「インポートとバックアップ(I)」
です。


まずはいじりやすいHTML形式でエクスポートしてみました。

適当なURLにタグをいくつかつけてから、エクスポート。

TITLE属性とかでタグが記述されてるのかなと思って、エクスポートされたファイル内を検索してみると……

どこにもない。

どうやらHTMLエクスポートではタグ情報はエクスポートされないようです。

仕方が無いので普通の「バックアップ(B)」を選択。

バックアップされたファイルはデフォルトではデスクトップに、「ブックマーク 2008-09-02.json」といったファイルが出力されます。

.jsonという拡張子なので「JavaScript Object Notation」と呼ばれる、Javascriptのオブジェクト表記でデータが格納されているようです。

こんな感じです。
{"title":"","id":1,"dateAdded":1220315793859375,"lastModified":1220316325859375,"type":"text/x-moz-place-container","root":"placesRoot","children":[{"title":"ブックマークメニュー","id":2,"parent":1,"dateAdded":1220315793859375,"lastModified":1220315837171875,"type":"text/x-moz-place-container","root":"bookmarksMenuFolder","children":[{"title":"最近ブックマークしたページ","id":7,"parent":2,"annos":[{"name":"Places/SmartBookmark","flags":0,"expires":4,"mimeType":null,"type":3,"value":"RecentlyBookmarked"}],"type":"text/x-moz-place","uri":"place:folder=BOOKMARKS_MENU&folder=UNFILED_BOOKMARKS&folder=TOOLBAR&sort=12&excludeQueries=1&excludeItemIfParentHasAnnotation=livemark%2FfeedURI&maxResults=10&queryType=1"},{"index":1,"title":"最近付けたタグ"....

ちなみに文字コードはUTF-8です。

カンマでキーや値が区切られており、中括弧でオブジェクト、角括弧で配列が表現されています。

元のデータは改行もなく、1列のかなり長いデータで見にくいので、自動でインデントをするプログラムを組みました。

簡単な文字列処理には、日本語プログラミング言語「なでしこ」が便利なんでよく使います。

以下がそのソース。
『ブックマーク 2008-09-02.json』をデータに読む
データをUTF8_SJIS変換
それの「,」を「,{改行}」に置換
それの『{』を『{』&改行に置換
それの『}』を『}』&改行に置換
それの『[』を『[』&改行に置換
それの『]』を『]』&改行に置換
データ=それ
全行数=(データの行数)

完成データ=「」
インデント数=0
データを反復
現列データ=それ
母艦=「{回数} / {全行数}」
(インデント数)回
完成データ=完成データ&「{タブ}」
完成データ=完成データ&「{現列データ}{改行}」
現列データから1文字右部分
終端文字=それ
もし(終端文字=『{』||終端文字=『[』)ならば
インデント数=(インデント数+1)
もし(終端文字=『}』||終端文字=『]』)ならば
インデント数=(インデント数-1)
完成データを言う
完成データを「output.txt」に保存
終わる


何も難しいことは考えずに、コンマ、中括弧、角括弧で改行して、括弧があったらインデントを増減するプログラムです。

で、これで出力した結果がこれ。
{
"title":"",
"id":1,
"dateAdded":1220315793859375,
"lastModified":1220316325859375,
"type":"text/x-moz-place-container",
"root":"placesRoot",
"children":[
{
"title":"ブックマークメニュー",
"id":2,
"parent":1,
"dateAdded":1220315793859375,
"lastModified":1220315837171875,
"type":"text/x-moz-place-container",
"root":"bookmarksMenuFolder",
"children":[
{
"title":"最近ブックマークしたページ",
"id":7,
"parent":2,
"annos":[
{
"name":"Places/SmartBookmark",
"flags":0,
"expires":4,
"mimeType":null,
"type":3,
"value":"RecentlyBookmarked"}
]
,
"type":"text/x-moz-place",
"uri":"place:folder=BOOKMARKS_MENU&folder=UNFILED_BOOKMARKS&folder=TOOLBAR&sort=12&excludeQueries=1&excludeItemIfParentHasAnnotation=livemark%2FfeedURI&maxResults=10&queryType=1"}
,
{
"index":1,
"title":"最近付けたタグ",
"id":8,
"parent":2,
"annos":[
{
"name":"Places/SmartBookmark",
"flags":0,
"expires":4,
"mimeType":null,
"type":3,
"value":"RecentTags"}
]
,
"type":"text/x-moz-place",
"uri":"place:sort=14&type=6&maxResults=10"}
,
{
"index":2,
"title":"",
"id":9,
"parent":2,
"dateAdded":1220315836359375,
"type":"text/x-moz-place-separator"}
,
{
"index":3,
"title":"ブックマークのアドオンを入手",
"id":10,
"parent":2,
"dateAdded":1220315836468750,
"lastModified":1220315836468750,
"type":"text/x-moz-place",
"uri":"http://ja.add-ons.mozilla.com/ja/firefox/bookmarks/"}.....

こんな感じです。

上に出ているのは先頭の部分なんで、「よく見るブックマーク」とか機能的なものばかり並んでいますが、実際にはこのあとの「"index":4」から、自分の登録したブックマークが記述されています。

「"children":[」という配列の形で入れ子にして、フォルダの階層構造が表現されています。

このようにブックマークしたURLごとにuri, title, id, parent, dateAdded, lastModified, type, charsetといったようなデータが記述されます。

uri, titleはそのままURLとタイトル。

idは個別にそれぞれに割り振られたID、parentは自身の親(フォルダの一つ上の階層)のid。

dataAdded、lastModifiedは、それぞれ追加と更新の日時でしょうかね。

この他にも見ていくと、色々なキーが設定されていますが、それぞれブックマークのコメントなど、詳細なデータに対応しているのでしょう。


そして一番重要なタグの情報ですが。

上で書いたフォルダ構成の中に、URLやタイトルと一緒に記述されてはいませんでした。

タグの情報はバックアップファイルの最後の方に、タグの情報として独立して記述されていました。

こんな感じ
			"index":2,
"title":"タグ",
"id":4,
"parent":1,
"dateAdded":1220315793859375,
"lastModified":1220316430875000,
"type":"text/x-moz-place-container",
"root":"tagsFolder",
"children":[
{
"title":"ZEN",
"id":3187,
"parent":4,
"dateAdded":1220316414828125,
"lastModified":1220316414953125,
"type":"text/x-moz-place-container",
"children":[
{
"title":"Creative ZEN Wiki*",
"id":3188,
"parent":3187,
"dateAdded":1220316414953125,
"type":"text/x-moz-place",
"uri":"http://wikiwiki.jp/zen/",
"charset":"EUC-JP"}
]
}
,
{
"index":1,
"title":"wiki",
"id":3189,
"parent":4,
"dateAdded":1220316415093750,
"lastModified":1220316415218750,
"type":"text/x-moz-place-container",
"children":[
{
"title":"Creative ZEN Wiki*",
"id":3190,
"parent":3189,
"dateAdded":1220316415218750,
"type":"text/x-moz-place",
"uri":"http://wikiwiki.jp/zen/",
"charset":"EUC-JP"}
]
}
,
{
"index":2,
"title":"FC2",
"id":3191,
"parent":4,
"dateAdded":1220316430625000,
"lastModified":1220316430750000,
"type":"text/x-moz-place-container",
"children":[
{
"title":"blog-entry-91.html",
"id":3192,
"parent":3191,
"dateAdded":1220316430750000,
"type":"text/x-moz-place",
"uri":"http://fc2blogmanual.blog60.fc2.com/blog-entry-91.html",
"charset":"EUC-JP"}
]
}
,
{
"index":3,
"title":"サイトマップ",
"id":3193,
"parent":4,
"dateAdded":1220316430875000,
"lastModified":1220316431000000,
"type":"text/x-moz-place-container",
"children":[
{
"title":"blog-entry-91.html",
"id":3194,
"parent":3193,
"dateAdded":1220316431000000,
"type":"text/x-moz-place",
"uri":"http://fc2blogmanual.blog60.fc2.com/blog-entry-91.html",
"charset":"EUC-JP"}
]
}
]
}

一つ一つのタグがフォルダのように分けられ、その中にそのタグを付けたURLを記述していくようです。

ここまでくれば、後は簡単。

ブックマークのフォルダ構造を解析して各URLごとにタグとして登録するフォルダ名を取得、タグとして書き込みその中に各URLを書き込むだけ。

と、思ったのですが……

idの付け方がわからない。

dateAddedとかlastModifiedは、別に時間がめちゃくちゃでもいいから同じようにコピペすればいいし、typeもコピペでいいんですが、idだけはコピペじゃまずい。

それぞれ個別に割り振られていて、さらにブックマーク群とタグ群で同じURLであっても、それぞれ違うidが割り振られていました。

しかも、順番に付けられているのかと思いきや、いきなり1000番ぐらい飛んだりもしてます。

重複はおそらく許されていないでしょうし、いいかげんにつけてFirefoxの動作に不具合が出ても困ります。

そんな訳で残念ながら、ここで断念。

やはりコツコツと手動でつけていくしかないようです。


願わくは、この記事を基に誰か偉い人がアドオンを作ってくれれば……

【追記】
Tagsifterというアドオンでフォルダ名をタグに変換することができるそうです。
コメントで教えていただきました。この機能がほんとに欲しかったので、かなり嬉しいです。
ありがとうございました!

今回興味を持ったもの

Firefox 3 Hacks Mozillaテクノロジ徹底活用テクニックFirefox 3 Hacks Mozillaテクノロジ徹底活用テクニック
江村 秀之

オライリージャパン 2008-08-27
売り上げランキング : 1065

Amazonで詳しく見る
by G-Tools


スポンサーサイト

関連した記事を見る(タグ検索)
解析 ブックマーク Firefox
最近の記事を見る

(2010/02/22)

QLOOKの解析タグのカスタマイズに新機能 (2009/05/02)

CREATIVE ZEN その11(ZEN MX発売) (2009/04/30)

あらゆるコネクタの埃(ホコリ)対策 (2009/03/31)

カテゴリごとにブログのデザインを替える方法 (2009/02/28)

T-falのIH鍋を買いました (2009/01/31)

ZoneAlarmフリー版のいらない右クリックメニューを消す方法 (2008/12/15)

CREATIVE ZEN その10(右クリックメニューを消す方法) (2008/12/12)

Spybotの右クリックメニューを消す方法 (2008/12/11)

ブログのカテゴリ分けを使いこなす (2008/11/21)


テーマ:Firefox - ジャンル:コンピュータ

カテゴリ:ソフトウェア

Firefox 3.0
このエントリーを含むはてなブックマーク FC2ブックマーク この記事をlivedoorクリップ! Yahoo!ブックマークに登録 Buzzurlにブックマーク
1ヶ月に一回バックアップを行っています。

それなりに時間がかかるので、古いPCをバックアップに使っているのですが。

そっちのPCの方でFirefox 3.0を試してみました。

Firebirdのたしかバージョン0.6の頃から愛用しているんですが、まさかここまで大きなプロジェクトになるとは当時予想もしてませんでした。

確かSleipnirが流行り始めてて、次々とタブブラウザが開発されてた頃でしたね。

Sleipnirはゴテゴテし過ぎてて、レンダリングエンジンもIEだったんであまり好きになれず。

学校でネスケ→モジラと使っていたので、その流れでFirebirdに辿りついたんだと思います。(どうやって知ったのか、選んだのか記憶がない。)

当時は拡張機能すら無かった頃だったのに、自分のフィーリングにマッチしたのでしょう。

まあ結果的に大成功です。

Gekkoエンジンとの切り替え機能搭載ってことで、Lunascapeも触ったことはあるんですが、これもゴテゴテが気に入らず。

ロボフォームとかが一緒についてきたけど、全く使えないことにも憤慨したような。

レンダリングエンジンの切り替えなんて、いまやIE Tabでできますもんね。

あっ、IE7も見た目とかが好きじゃないんでアップデートすらしてません。



そんなFirefoxなんですが、メジャーバージョンアップの導入には慎重です。

人柱になる気はないですからね。

XPのSP3も気にはなっていますが、あと数ヶ月は様子見でしょう。

Firefox 3.0も初期バグが見つかって、それのフィックスが終わって、ほとんどのアドオンが対応してから導入しようと思ってます。

ただ、今回はほとんど使ってない2台目のPCがあるんで、こっちで遊んでみた次第です。

RCを入れてるとうまくいかないとか聞いてたんですが、うちは2.0.0.14でもうまくいきませんでした。

アドオンの関係なんかな?

アドオンのアップデートの次の画面から表示がされなくなり、プロセスから強制終了。

それ以降は何回起動しても同じ状態。

やはり新規プロファイルにするのが無難なようです。

そんな訳で既存のプロファイルを移動して、新規プロファイルで起動。

やっとうまくいきました。

ツールバーのアイコンが変わり、見た目が若干変わっていました。

これはメジャーバージョンアップでは、いつもそうですね。

「戻る」「進む」アイコンの統合は最近の流行なのでしょうか?

IE7もそんな感じだったような。

たしかに使用頻度は戻るの方が圧倒的に多いでしょうから、利には適ってますね。

マウスジェスチャーを使ってないので、結構影響があるのかも。



さらにブックマークの管理に変更が。

ワンクリックブックマーク機能は別に便利さをあまり感じないのですが、ブックマークごとにタグをつけられるのは便利かも。

タグ管理っていうのも、最近のソフトウェアでは主流ですね。

ちなみにうちのブログもユーザータグによる管理機能がありますが、記事の最下部に表示されるようにこないだ変更しました。

関連記事が見やすくなったので、また見てください。

といっても、まだ全然記事がありませんが…

とにかくブックマークにタグがつけられます。

ただ、既存のブックマークにタグをつけ直すとなると大変な作業になるのでは…

フォルダ管理のデータを使って、自動的に全階層のフォルダ名をタグとしてつけてくれるアドオンできないかな。

ちなみに新規プロファイルにしたので、以前のbookmarks.htmlを上書きしたのですが、うまくいかず。

少し管理画面を眺めてたら、新機能としてブックマークのインポート/エクスポート機能を使うらしい。

後で調べてみたところ今回のバージョンではbookmarks.htmlは使わないで、インポートのみに使うらしい。

ブックマーク管理のフォームは高機能になった分、少し以前と違って使い辛い。

まあ慣れればなんとかなる部分だと思いますが。

bookmarks.htmlをインポートしてみると、問題なく以前と同じブックマークが並びました。

ただ、なんか機能が増えてブックマークメニューがゴテゴテしてるのが、少し気に入らないです。

最近ブックマークしたページだのよく見るページだの。

最近系はたぶんあんま使わないと思うから、もう1段下の階層にいて欲しい。

あと「よく見るページ」はさ…

絶対エロいページが並んで、「俺、何やってんだろ…」って悲しくなると思うんだ。

他人に見られて「お前こんなとこばっか見てんのかよ!」「あなたこんな趣味が…」みたいな。

せっかく下の方の階層に隠してたブックマークも丸見えです。

そう考えるとタグ機能も十分注意してつけなくてはなりませんね。

最近使ったファイル、訪問履歴、検索履歴につづいて、よく見るページも消去しないとプライバシーが守れない時代になりました。



新規プロファイルってことで、アドオンも入れなおしたんですが、アドオン画面に「アドオンを入手」機能がつきました。

アドオンの検索以外に、おすすめのアドオンなんかも教えてくれます。

Linuxでも最近のFedoraなんかにはこういうのついてますね。

windowsもフリーソフトの導入をもっと簡単にできるような仕組みを入れてくれないもんでしょうか。

ちなみに必要最低限の入れたアドオンは

Download Statusbar
DownThemAll
Fission
IE Tab
No script
scrapbook

です。

全部3.0に対応しておりました。

普段使いの方はあといくつか入れてますが、これだけあれば十分です。

ゴテゴテしてきたメニューについてもアドオン使って管理するしかないですねぇ。

以前はMenuEditorを使ってたんですが、アドオン同士の相性のせいかうまくいかず、更新もあまりされていなかったので2年くらい前に使うのをやめました。

今見てみたら3.0に対応ってことで、しっかり更新されてたんで、また使ってみたいと思います。



あとは地味なところで「最近閉じたタブ」がデフォルトで中クリック対応になりました。

「タブを開くんだから中クリックだろう」っていう自分みたいな人には朗報です。

ちょっとしたイライラがたまる原因になってました。

いや、かなりイライラさせられてたかも。

毎回ミスってる自分にも、こんな小さな気遣いのないFirefoxにも。

ちなみに2.0ではuserChrome.jsを使わないと変更できなかった部分でした。


今回興味を持ったもの

Firefoxを究める256のテクニックFirefoxを究める256のテクニック
下田 洋志

秀和システム 2006-01
売り上げランキング : 209176
おすすめ平均

Amazonで詳しく見る
by G-Tools



関連した記事を見る(タグ検索)
PC Firefox
最近の記事を見る

(2010/02/22)

QLOOKの解析タグのカスタマイズに新機能 (2009/05/02)

CREATIVE ZEN その11(ZEN MX発売) (2009/04/30)

あらゆるコネクタの埃(ホコリ)対策 (2009/03/31)

カテゴリごとにブログのデザインを替える方法 (2009/02/28)

T-falのIH鍋を買いました (2009/01/31)

ZoneAlarmフリー版のいらない右クリックメニューを消す方法 (2008/12/15)

CREATIVE ZEN その10(右クリックメニューを消す方法) (2008/12/12)

Spybotの右クリックメニューを消す方法 (2008/12/11)

ブログのカテゴリ分けを使いこなす (2008/11/21)


テーマ:Firefox - ジャンル:コンピュータ

カテゴリ:ソフトウェア



上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。