Safariの履歴でWebサイトの訪問時間を確認する


21

Safariの履歴でWebサイトがアクセスされた時刻を特定する方法を見つけようとしています。(これが私が今まで使用した他のすべてのブラウザのように簡単にできない理由を想像することはできません)。

注: Safari 9.0.3とEl Capitan 10.11.3を実行しています。

いくつかの調査を行ったところ、いくつかのファイルが見つかりました~/Library/Safari。ファイルHistory.dbファイルはおそらく有望に見えますが、これからタイムスタンプを見つける方法をまだ理解できていません。

回答:


16

10.11.4でこれを試したところ、うまくいきました。あなたは歴史を見ることができます。誰かがキャッシュをクリアすると、これはなくなります。

次の場所に移動します。

/Users/yourname/Library/Caches/Metadata/Safari/History/

ここから、ビューをリストビューに変更し、変更日で並べ替えることができます。


3
それでも、Appleがこれについて何らかの作業を行うといいでしょう-chrome chrome.google.com/webstore/detail/better-history/の
BG Bruno

22

だから今日、スリープトラッカーアプリに目を覚まして、思ったよりも一時間早く寝たと言ったので、当然アプリは愚かな間違いを犯したと思いました。幸いなことに、寝る前にネットサーフィンをしていましたが、どうやらAppleはHigh SierraまたはSafari 11の時点で再び状況を変えたので、他の答えはうまくいきませんでした。

訪問時間を取得する方法を見つけましたが、この非常に重要でない問題の底に到達するためにはるかに進んでいたので、ここで私の発見を共有すると思いました:

編集

さて、私はもう少し夢中になって、あなたのためにすべてのハードワークをするためにbashワンライナーを書きました。ターミナルを開いてコピーアンドペーストするだけです。その間にAppleが再び何かを変更しない限り、何もインストールすることなく動作します。

出力の空行(http-redirects)は無視できます。また30、コマンドの最後の番号を変更して、表示する行の数をフィルタリングできます。

sqlite3 ~/Library/Safari/History.db 'select visit_time,title from history_visits order by visit_time desc;' \
 | while read i; do d="${i%%.*}"; echo "$(date -r $((d+978307200))) | ${i#*|}"; done \
 | head -n 30

元の答え

そのため、以前のようにすべての履歴を含む単純なフォルダを使用する代わりに、データベースに履歴を書き込みます。本当にしたい場合に情報を取得する方法は次のとおりです。

  1. データはSQLiteデータベースに保存されるようになったため、それを読み取るためのツールが必要になります。SQLite用DBブラウザーをお勧めします。通常の方法でインストールしてください。
  2. データベースファイルを開きます。次の場所にあります/Users/[yourname]/Library/Safari/History.db
  3. [ データ参照 ]タブで[ テーブル: ]ドロップダウンをクリックし、history_visitsを選択します。 History_visitsスクリーンショット
  4. 次に、visit_timeでソートし、興味のあるものを見つけます。
  5. visit_time列の下のこれらの数値はコアデータタイムスタンプであるため、人間が読めるものを取得するにはコンバーターが必要です。これを使用するだけです:https : //www.epochconverter.com/coredata

これがあなたの歴史関連の難問を解決することを願っています。


1
あなたは最高の仲間です!! モハベでも魅力的です!!
Jeeva

2
他のソリューションはmojaveで動作していませんでしたが、これは素晴らしい動作です!! どうもありがとうございました:)
Flaming_Dorito

それが失敗した場合は、単に別の場所にデータベースファイルをコピーするか、あるいは閉じサファリは十分です
サイモン

10

meonlolが上で与えたonelinerを修正しました。このように、純粋なSQLクエリです。

sqlite3 ~/Library/Safari/History.db \
    'SELECT datetime(visit_time+978307200, "unixepoch", "localtime"), title
     FROM history_visits
     ORDER BY visit_time DESC
     LIMIT 30;'

Mojaveでは、おそらく後で、ターミナルでのファイルへのアクセスは制限されているようです。どちらのシステム環境におけるターミナルへのフルアクセスを許可または開くためにファインダーを使用~/Library/Safariして、コピーHistory.dbどこか別の場所に。


1
データベースをライブラリツリー以外の場所(少なくともMojave)にコピーする場合は+1。データベースにアクセスするために必要な手順のようです。
DaveL17

1
システム環境設定でターミナルにフルアクセスを許可すると、Mojave上のファイルにアクセスできます。
nohillside

1

このパスはSierraで変更されました

10.12.6では

/ Users / yourname / Library / Caches / Metadata / Safari / History


0

Sierraでは、Finderを使用してSafariというフォルダーを検索し、Historyフォルダーに移動するだけで、前述のようにビューを変更できます。


0

URLとウィンドウタイトル、さらにクエリに追加できる検索または選択機能などが必要でした(どこでもgoogleの言及を示します)。この例では、アンパサンド(&)文字の後のURLの長いテールを削除しました。TACは、最後の順序で最新の状態に戻します。ターミナルセッションで:

sqlite3 ~/Library/Safari/History.db 'SELECT datetime(history_visits.visit_time+978307200, "unixepoch", "localtime"), history_visits.title || " @ " || substr(history_items.URL,1,max(length(history_items.URL)*(instr(history_items.URL,"&")=0),instr(history_items.URL,"&"))) as Info FROM history_visits INNER JOIN history_items ON history_items.id = history_visits.history_item where Info like "%google%" ORDER BY visit_time DESC  LIMIT 30;'|tac

特定の過去の日付でブラウジングを確認するには、時刻と日付の複雑さが伴いますが、これは、特定の日付と時刻から、必要に応じてedit2020-01-19 15:30に役立つことがあります...

sqlite3 ~/Library/Safari/History.db 'SELECT datetime(history_visits.visit_time+978307200, "unixepoch", "localtime"), history_visits.title || " @ " || substr(history_items.URL,1,max(length(history_items.URL)*(instr(history_items.URL,"&")=0),instr(history_items.URL,"&"))) as Info FROM history_visits INNER JOIN history_items ON history_items.id = history_visits.history_item where history_visits.visit_time>(julianday("2020-01-19 15:30")*86400-211845068000)  ORDER BY visit_time ASC LIMIT 30;'

次のような出力を与える:

2020-01-20 16:35:15|Amazon.co.uk: carborundum wheel @ https://www.amazon.co.uk/s/ref=nb_sb_noss_1?url=search-alias%3Daps&
2020-01-20 16:35:15|Amazon.co.uk: carborundum wheel @ https://www.amazon.co.uk/s?k=carborundum+wheel&
2020-01-20 16:35:41|Multi-Sharp 1301 Rotary Mower/Garden Tool Sharpener: Amazon.co.uk: Garden & Outdoors @ https://www.amazon.co.uk/Multi-Sharp-Rotary-Mower-Garden-Sharpener/dp/B0001OZH6M/ref=sr_1_11?keywords=carborundum+wheel&
2020-01-20 16:37:14|Amazon.co.uk: grinding wheel @ https://www.amazon.co.uk/s?k=grinding+wheel&
2020-01-20 16:39:26|Amazon.co.uk: grinding wheel @ https://www.amazon.co.uk/s?k=grinding+wheel&
2020-01-20 16:39:26|Amazon.co.uk: grinding wheel @ https://www.amazon.co.uk/s?k=grinding+wheel&
2020-01-20 16:40:15|FERM BGA1057 Grind Stone: Amazon.co.uk: DIY & Tools @ https://www.amazon.co.uk/Ferm-BGA1057-FERM-Grind-Stone/dp/B00AW9GVO8/ref=sr_1_71?keywords=grinding+wheel&

最後に、sqlite3セッションを開いて多くのクエリを実行すると、Safariを使用し続けてもデータベースが更新されないように見えます。スナップショットコピーが使用されている可能性がありますか?(これはEl Capitanで。後のOSバージョンでファイルのコピーを作成する必要がある場合、明らかにアップデートは表示されません!)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.