2014年5月15日2021年2月12日

Firefoxのページ閲覧履歴をCSVに書き出す


Firefoxのブックマークをファイルにエクスポートする機能は標準で付いていますが、ページの閲覧履歴は表示できても、書き出すことができません。
履歴を消したくても、残したいという人はあんまりいないのではないかと思いますが、そんな人が他にもいるかもしれないので、閲覧履歴をCSVファイルに書き出すメモ。

環境はMacです。Windowsでも同様の手順で書き出し可能ではないかと思います。

ステップ

1.閲覧履歴が保存されているFirefoxのデータベースファイル(places.sqlite)をコピー
2.Firefoxに「SQLite Manager」アドオンをインストール
3.SQLite Mangerを使って必要なデータを読み出し、CSVファイルとして保存

1.閲覧履歴が保存されているFirefoxのデータベースファイル(places.sqlite)をコピー

「Finder」のツールバーから「移動」を選択し、メニュー一覧を表示させます

名称未設定

メニュー一覧を表示させた状態で「option」キーを押すと、「ライブラリ」という項目が表示されます。

名称未設定2

「ライブラリ」を選択すると、移動しますので、ディレクトリを
Application Support」→「Firefox」→「Profiles」→「xxxx.default」(xxxは各々のパソコンによって異なる文字列)と移動していきます。

スクリーンショット 2014-05-15 16.11.02スクリーンショット-2014-05-15-16.14.56
places.sqlite」というファイルを探して、デスクトップにコピーします。
コピーするのは、この後の作業で誤ってデータを削除してしまっても問題ないようにするためです。

2.Firefoxに「SQLite Manager」アドオンをインストール

Firefoxのアドオンのサイトで「SQLite Manager」を探してインストールします。
「アドオンを検索」に「SQLite」というキーワードで検索すれば出てきます。

スクリーンショット-2014-05-15-16.27.48

3.SQLite Mangerを使って必要なデータを読み出し、CSVファイルとして保存

「SQLite Manager」をインストールしたら、Firefoxの「ツール」から「SQLite Manager」を起動します。

スクリーンショット-2014-05-15-16.30.29

フォルダのアイコンをクリックすると、開くファイルを指定できるので、先ほどデスクトップにコピーした「places.sqlite」ファイルを指定するとデータが読み込まれます。

スクリーンショット-2014-05-15-16.31.11

ページ閲覧履歴は「moz_places」というテーブルに保存されています。左のテーブル一覧から「moz_places」を選択すると右側にデータが表示されます。

スクリーンショット-2014-05-15-16.31.27

このままでは余分なデータのフィールドが含まれるので、SQLコマンドを指定して必要な項目だけ抜き出したデータを表示します。

構造」を「SQL実行」に切り替えます。
スクリーンショット-2014-05-15-16.36.53

SQLを入力」と書かれた欄に

SELECT title,url,last_visit_date FROM moz_places

というSQL文を入力し、「SQLを実行」ボタンを押すと、SQLで選択した項目だけが一覧として表示されます。

スクリーンショット-2014-05-15-16.37.28
このデータをCSVとして書き出すには「Actions」から「Save Result(CSV) to File」を選択すると保存することができます。

スクリーンショット-2014-05-15-16.37.33

※「View CSV」は選択しないほうが良いと思います。履歴データが多いとFirefoxがフリーズしてしまいます。

4 thoughts on “Firefoxのページ閲覧履歴をCSVに書き出す

  1. はじめまして。
    win xpでもcsvファイルまで出力出来ました。
    ありがとうございました。
    質問なんですがlast visit dateの数字は日付だと思うんですが
    1440239545826000 と表示された場合は14は2014年と思われますが
    その後の0239..,はドウ捉えたらいいのでしょうか?

  2. はじめまして。
    win xp でも出来ました。
    last visit date の数字をどう解釈したらいいのか分からないので教えていただきたいです。 例えば1355490827061233 は2013年のことかなと予想は出来るんですが
    後の桁数が異常に多い数字が何を表しているのか疑問です。 

    1. こんにちは。筆者です。
      1355490827061233 というのはUNIX時刻でして、
      1970年1月1日午前0時0分0秒を起点とした経過秒数を表します。(閏秒などが調整された経過時刻です)
      ここから1355490827061233秒経過した日時は
      2012年12月14日 22:13:47となります。
      Web検索するとUNIX時刻の変換サイトがいくつか見つかります。
      また、プログラム言語にもこのUNIX時刻を一般的な現在日時に変換してくれる関数が用意されているものもあります。

コメントはこちらから

メールアドレスは公開されません。 * が付いている欄は必須項目です

タグ一覧

© 2021 びわ湖のほとりの人 All Rights Reserved.