Veja o tempo de visita ao site na história do Safari

21

Estou tentando descobrir como determinar o horário em que os sites foram visitados no histórico do Safari. (Não consigo imaginar por que isso não é fácil de fazer, como em qualquer outro navegador que já usei).

NOTA: Estou executando o Safari 9.0.3 e El Capitan 10.11.3.

Eu fiz algumas pesquisas e encontrei alguns arquivos no ~/Library/Safari. O arquivo History.dbparece possivelmente promissor, mas ainda não consegui descobrir como encontrar o carimbo de data e hora.

Darren
fonte

Respostas:

16

Eu apenas tentei isso no 10.11.4 e funciona; você pode ver a história. Se alguém limpa o cache, isso desaparece.

Vá para o seguinte local:

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

A partir daqui, você pode alterar a exibição para Exibição em lista e classificar por Data de modificação.

fsb
fonte
3
ainda que seria bom se a Apple trabalhar algum sobre isso - simples extensão seria útil como este para cromo chrome.google.com/webstore/detail/better-history/...
BG de Bruno
22

Então, acordei hoje com meu aplicativo rastreador do sono dizendo que eu fui para a cama uma hora antes do que pensava, então naturalmente assumi que o aplicativo foi quem cometeu o erro estúpido. Felizmente, eu navegava na web antes de ir para a cama, mas aparentemente a Apple mudou as coisas novamente como no High Sierra ou no Safari 11, para que as outras respostas não funcionassem para mim.

Descobri como obter os horários das visitas e, como já fui muito longe para chegar ao fundo dessa questão altamente sem importância, pensei em compartilhar minhas descobertas aqui:

Editar

Ok, então eu me empolguei um pouco mais e escrevi um verso para fazer todo o trabalho duro para você. Basta abrir o terminal e copiá-lo. Ele deve funcionar sem a necessidade de instalar nada, a menos que a Apple altere algo novamente nesse meio tempo.

Você pode ignorar as linhas vazias na saída (são redirecionamentos http) e pode alterar o último número 30no comando para filtrar o número de linhas que deseja ver.

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

Resposta original

Então, em vez de ter uma pasta simples com todo o histórico como antes, eles agora gravam o histórico em um banco de dados. Veja como você obtém as informações se realmente deseja:

  1. Os dados agora estão armazenados em um banco de dados SQLite, então você precisará de alguma ferramenta para ler isso. Eu sugiro o DB Browser for SQLite . Basta instalá-lo da maneira usual.
  2. Agora abra o arquivo de banco de dados. Ele está localizado aqui: /Users/[yourname]/Library/Safari/History.db.
  3. Na guia Procurar dados, clique na tabela: lista suspensa e selecione history_visits . Captura de tela History_visits
  4. Agora, classifique por visit_time e encontre o que lhe interessa.
  5. Esses números na coluna visit_time são um carimbo de data / hora principal dos dados. Portanto, para obter algo legível por humanos, você precisa de um conversor. Basta usar este: https://www.epochconverter.com/coredata

Espero que isso resolva seu enigma relacionado à história.

leondepeon
fonte
1
Você é um companheiro incrível !! Também funciona como um encanto no Mojave !!
21418 Jeeva
2
As outras soluções não estavam trabalhando no mojave, mas isso funciona muito bem! Muito obrigado companheiro :)
Flaming_Dorito
Se ele falhar basta copiar o arquivo de banco de dados para outro lugar, ou talvez fechando safari é suficiente
Simon
10

Modifiquei o oneliner que o meonlol deu acima. Dessa forma, é apenas uma consulta SQL pura.

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

No Mojave, e possivelmente mais tarde, o acesso ao arquivo no terminal parece limitado. Conceda acesso total ao Terminal nas Preferências do Sistema ou use o Finder para abrir ~/Library/Safarie copie History.dbpara outro lugar.

priiiiit
fonte
1
+1 na cópia do banco de dados para um local fora da árvore da Biblioteca (pelo menos no Mojave). Parece uma etapa necessária para acessar o banco de dados.
DaveL17 20/05/19
1
Você ainda pode acessar o arquivo no Mojave se conceder acesso total ao Terminal nas Preferências do Sistema.
nohillside
1

Este caminho mudou na Sierra

Em 10.12.6, vá para

/ Usuários / seunome / Biblioteca / Caches / Metadados / Safari / Histórico

user258682
fonte
0

Agora, no Sierra, use o Finder para procurar uma pasta chamada Safari, vá para a pasta History e você poderá alterar a exibição conforme mencionado anteriormente.

Amanda
fonte
0

Eu queria o URL, bem como o título da janela, além da capacidade de pesquisar ou selecionar etc, que podem ser adicionados à consulta (ilustrando a menção do google em qualquer lugar). Nesse caso, removi qualquer cauda longa do URL após o e comercial (&) char. O tac devolve o mais tardar na ordem final. Na sessão do terminal:

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

A revisão da navegação em uma determinada data passada envolve complexidades de hora e data, mas isso pode ajudar, a partir de uma determinada data e hora, editar2020-01-19 15:30 para sua necessidade ...

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;'

Dando saída como:

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&

Uma última observação: se você abrir uma sessão do sqlite3 para fazer muitas consultas, descobri que o banco de dados não parece ser atualizado se você continuar usando o Safari. Talvez uma cópia de instantâneo seja usada? (Isso no El Capitan. Se você precisar fazer uma cópia de arquivo em versões posteriores do sistema operacional, obviamente nenhuma atualização será exibida!)

colin
fonte