Armazenando o histórico do navegador para análise pessoal

1

Estou interessado na análise pessoal e gostaria de encontrar uma maneira robusta de agregar e armazenar meu histórico de navegação na Web em um formato que eu possa entender e manipular. Eu principalmente uso o Google Chrome.

Por um tempo, agora eu usei um script Python ao longo destas linhas (que é o código que eu tenho de outro lugar, mas eu esqueci onde):

pattern = "(((http)|(https))(://)(www.)|().*?)\.[a-z]*/"
SQL_STATEMENT = 'SELECT urls.url, visit_time FROM visits, urls WHERE visits.url=urls.id;'

dumpdir = '...\Chrome History Dump'
storage = open(dumpdir+'/hdump.txt', 'a')

def date_from_webkit(webkit_timestamp):
    epoch_start = datetime.datetime(1601,1,1)
    delta = datetime.timedelta(microseconds=int(webkit_timestamp))
    return epoch_start + delta

paths = ["...\AppData\Local\Google\Chrome\User Data\Default\Archived History", 
         "...\AppData\Local\Google\Chrome\User Data\Default\History"] 

for path in paths:
    c = sqlite3.connect(path) 
    for row in c.execute(SQL_STATEMENT):
        date_time = date_from_webkit(row[1])
        url = re.search(pattern, row[0])
        try: urlc = url.group(0)
        except: urlc = "ERROR"
        storage.write(str(date_time)[0:19] + "\t" + row[0] + "\n")
    c.close()
    os.remove(path)

Infelizmente, as atualizações recentes do Chrome quebraram essa abordagem. Ainda não analisei o motivo, mas resolvi encontrar uma maneira melhor de fazer isso. Alguém tem alguma sugestão? Estes são alguns dos critérios que tenho em mente:

  • A solução deve extrair o histórico do navegador e (de preferência) remover a cópia do Google.
  • Seria bom se fosse possível executá-lo automaticamente, sempre que o Chrome fosse iniciado (como fiz com o pequeno script acima) ou em uma programação regular.
  • A solução deve ser o mais robusta possível para alterações na maneira como o Chrome armazena seu histórico - seja por design ou (ainda melhor) porque é um software de manutenção contínua.
  • É necessário armazenar apenas o URL e o horário da visita, as informações no histórico podem ser descartadas.

Muito obrigado.

    
por JOwen 02.08.2013 / 19:45

0 respostas