Acesse programaticamente o histórico do navegador
Pergunta
como posso criar um aplicativo para ler todo o histórico do meu navegador (firefox)?notei que tenho em
C:\Users\user.name\AppData\Local\Mozilla\Firefox\Profiles\646vwtnu.default
o que parece ser um banco de dados sqlite (urlclassifier3.sqlite), mas não sei se é realmente o que é usado para armazenar informações do histórico.procurei exemplos de como fazer isso, mas não encontrei nada.
obs:embora o título seja semelhante, acredito que esta questão não seja a mesma que "Como você acessa o histórico do navegador?"
Solução
Eu acredito places.sqlite
é aquele que você deve procurar no histórico (Firefox 3).Abaixo estão algumas entradas do wiki da Mozilla que contêm algumas informações sobre o assunto.
- Mozilla 2:Armazenamento Unificado
- Histórico do navegador (veja especialmente a seção "Design de banco de dados" aqui)
Nas versões anteriores do Firefox, eles armazenavam o histórico em um arquivo chamado history.dat
, que foi codificado em um formato chamado "Mork". Este script perl de Jamie Zawinski pode ser usado para analisar arquivos Mork.
Outras dicas
Também achei os seguintes links interessantes:
- Literalmente faça história com o Firefox 3
- SQLite no .NET – Comece a funcionar em 3 minutos.
- Complemento SQLite Manager para Firefox
Depois de adicionar uma referência ao System.Data.Sqlite no meu projeto .Net, tudo que tive que fazer para criar uma conexão foi:
cnn = New SQLiteConnection("data source=c:\Users\user.name\AppData\Roaming\Mozilla\Firefox\Profiles\646vwtnu.default\places.sqlite")
cnn.Open()
Eu tive uma pequena falha: o provedor .net sqlite não suporta sqlite3_enable_shared_cache, o que acredito estar me impedindo de abrir o banco de dados places.sqlite enquanto o Firefox está em execução (consulte Suporte para sqlite3_enable_shared_cache)
O Complemento SQLite Manager do Firefox é uma ótima ferramenta.Se você deseja aprender sobre o design do Firefox Places e o esquema do banco de dados, visite Locais Mozilla.