Unir vários arquivos de despejo de banco de dados SQLite consecutivos em um banco de dados comum? Objetivo: pesquisar por TODO o histórico de navegação do Chrome

2
O mecanismo de pesquisa de histórico de navegação da web do Google Chrome só permite acessar os registros dos últimos 100 dias. No entanto, nos dados da sua aplicação, o Chrome mantém o seu histórico de navegação inteiro em arquivos de banco de dados SQLite, com o esquema de nomeação de arquivo de "Índice Histórico YYYY-MM".

Estou procurando uma maneira de pesquisar…

  1. … através do meu histórico de navegação completo ,
  2. … com filtros sofisticados (limite os termos de pesquisa a determinados campos, como URL, domínio, título, corpo de texto; termos curinga ou regex, períodos).

… em…

  1. … ou algum software pronto .
    • A eHistory chegou perto, pois pode limitar os termos a campos, mas não possui curingas / regexes e tem os mesmos limites horizonte de tempo como a pesquisa padrão.
    • Além disso, não encontrei nenhuma extensão do Chrome adequada ou aplicativo autônomo (Mac).
  2. … ou uma linha de comando para unir vários arquivos de banco de dados SQLite em um banco de dados, o qual eu posso consultar (com o poder de sintaxe completo). No espírito do pseudo código abaixo:

    • Preferido desta forma: sqlite --targetDatabase ChromeHistoryAll --importFiles /path/to/ChromeAppData/History\ Index* --importOnlyYetUnknownFiles

    • Ou se meu recurso desejado --importOnlyYetUnknownFiles não for possível (o recurso também pode ser chamado de "evitar importações duplicadas verificando UIDs"), então importando explicitamente apenas arquivos, dos quais eu sei, que eles ainda não foi importado para o banco de dados ChromeHistoryAll: cd ChromeAppData; sqlite --databaseTarget ChromeHistoryAll --importFiles YetNotImported1 YetNotImported2 YetNotImported3

    • Todas as minhas consultas eu realizaria no banco de dados "ChromeHistoryAll"



PS: Pergunta adicional de interesse geral: Existe uma maneira de executar uma consulta de banco de dados em um banco de dados temporário que foi criado em tempo real a partir de vários arquivos? / p>

Como: sqlite --query="SQL query" --targetDatabase DbAll --DBtemporaryInRAM --importFiles db1 db2 db3

Isso certamente não se aplica à minha pergunta do Chrome, pois esses arquivos do Índice de histórico têm um tamanho de arquivo combinado de 500 MB juntos, portanto, essa consulta seria de desempenho ruim. Mas pode ser útil em outras situações.

    
por porg 23.01.2012 / 23:54

0 respostas