LoginSignup
9

More than 3 years have passed since last update.

Apple Safariの閲覧履歴をエクスポートする

Posted at

前回、Google Chromeの履歴をエクスポートする方法を記事にしました。
今回は要望があったSafari版を書いていこうと思います。

履歴データの保存場所

Safariの履歴は以下のディレクトリにあります。

~/Library/Safari/

この中にHistory.dbというファイルがあるのでそれが履歴ファイルです

履歴データを開くための準備

Google Chromeの履歴の場合は問題ないですが Safariの場合、履歴の保存されている場所にTerminalでアクセスができません。
Mac本体の設定を変更することによりアクセスはできますが、少々危険が伴うため今回は別の方法を紹介します。
chmodなどを使用しても不可です。

> cd ~/Library/Safari/

// Finderでディレクトリを開く
> open .

Finderで開きましたら、その中にあるHistory.dbというファイルを任意の場所にコピーします。
コピーは必ずSafariを完全に終了してから行ってください。(ファイルが正しく開けない時がありました)
※今回はデスクトップにコピーしたものとします

コピーが完了したら、そのディレクトリに移動して作業の再開です。

> cd ~/Desktop/

> sqlite3 History.db

// テーブル一覧の表示
sqlite> .tables

今回は各テーブルの説明は省きます。
今回使うテーブルはhistory_itemshistory_visitsの二つを使います。

// .mode [モード名] でモード指定
sqlite> .mode csv

// .output [ファイル名].csv でファイル名指定
sqlite> .output result.csv

// ヘッダーをつける
sqlite> .headers on

// 抽出(アクセス時間、ドメイン、タイトル、URL)
 sqlite> select datetime(v.visit_time + 978307200, 'unixepoch', 'localtime') as date, i.domain_expansion, v.title,  i.url from history_items i left join history_visits v on i.id = v.history_item order by date desc;

sqliteを抜けると現在のディレクトリにresult.csvというファイルができています。

以上です。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
9