Obtenga el historial del navegador usando Python en Ubuntu

Para obtener el historial del navegador de Chrome y se utilizan el módulo os del navegador Mozilla Firefox y los módulos sqlite3 . Los datos del historial de Chrome y Firefox se almacenan en la base de datos SQLite. Por lo tanto, se necesita el paquete SQLite Python para extraer los datos del historial del navegador.
 

Obtener historial de Firefox

El navegador Firefox almacena todos los detalles en la carpeta .mozilla/firefox. El archivo de historial tiene la extensión .default. Para obtener el historial del navegador Firefox, siga los pasos que se indican a continuación. Obtenga el nombre del archivo predeterminado que almacena el historial del navegador desde la terminal como se menciona a continuación
 

Nota: el nombre del historial de almacenamiento de archivos difiere en el sistema pero la extensión sigue siendo la misma (.predeterminada)
Ejemplo 
 

Python

import os
import sqlite3
 
 
# Build Data path
data_path = os.path.expanduser('~')+"/.mozilla/firefox/ri27ye3b.default"
history_db = os.path.join(data_path, 'places.sqlite')
 
# Make connection with sqlite3 database
c = sqlite3.connect(history_db)
 
# Create cursor object to execute query
cursor = c.cursor()
select_statement = "select moz_places.url, moz_places.visit_count from moz_places;"
cursor.execute(select_statement)
 
# Fetch the result and Prints the result
results = cursor.fetchall()
 
for url, count in results:
     print(url)
         
# Close the cursor
cursor.close()

Nota: Su navegador debe estar cerrado cuando ejecute el código de python anterior. Cuando se abre el navegador, adquiere un bloqueo en la base de datos, por lo que no permitirá el acceso al código python. El funcionamiento
del código es como se menciona a continuación. 
 

  1. Importar módulo os y módulo sqlite3.
  2. El método os.path.expanduser() se usa para expandir un componente de ruta inicial ~ o ruta al directorio de inicio del usuario.
  3. El método os.path.join() une uno o más componentes de ruta con exactamente un separador de directorio (‘/’) después de cada parte no vacía excepto el último componente de ruta para obtener la ruta final.
  4. El método de conexión de sqlite3 luego se conecta con la base de datos.
  5. Una vez que la conexión es exitosa, crea el objeto del cursor para acceder a las tablas
  6. El método de ejecución de los objetos del cursor ejecuta la consulta en la base de datos sqlite3 y los registros se recuperan mediante el método fetchall y se almacenan en los resultados
  7. for loop imprime los registros obtenidos de la base de datos
  8. Es importante cerrar el cursor, cuando se realiza la tarea, ya que libera todos los bloqueos en la base de datos sqlite3.

Obtener historial de Chrome

El navegador Chrome almacena todos los detalles en la carpeta .config/google-chrome/Default. Aquí History es el nombre de la base de datos donde se almacena el historial del navegador. 
Para obtener el historial del navegador Chrome, siga los pasos que se indican a continuación 
. Para verificar la presencia de la base de datos del historial, siga los pasos que se indican en la imagen a continuación.
 

Ejemplo 
 

Python

import sqlite3
 
con = sqlite3.connect('/home/admin1/.config/google-chrome/Default/History')
c = con.cursor()
 
# Change this to your preferred query
c.execute("select url, title, visit_count, last_visit_time from urls")
results = c.fetchall()
 
for r in results:
    print(r)
     
c.close()

Nota: Su navegador debe estar cerrado cuando ejecute el código de Python anterior. Cuando se abre el navegador, adquiere un bloqueo en la base de datos, por lo que no permitirá el acceso al código de Python. El funcionamiento
del código es como se menciona a continuación. 
 

  1. Importar módulo sqlite3.
  2. El método de conexión de sqlite3 luego se conecta con la base de datos. Tenga en cuenta que la ruta «home/admin1» difiere según la ruta raíz del sistema
  3. Una vez que la conexión es exitosa, crea el objeto del cursor para acceder a las tablas
  4. El método de ejecución de los objetos del cursor ejecuta la consulta en la base de datos sqlite3 y los registros se recuperan mediante el método fetchall y se almacenan en los resultados
  5. for loop imprime los registros obtenidos de la base de datos
  6. Es importante cerrar el cursor cuando se realiza la tarea, ya que libera todos los bloqueos en la base de datos sqlite3.

Publicación traducida automáticamente

Artículo escrito por rupanisweety y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *