博客
关于我
python3----读取本机谷歌浏览器的访问的URL历史记录信息
阅读量:568 次
发布时间:2019-03-09

本文共 3323 字,大约阅读时间需要 11 分钟。

好的!以下是优化后的文章内容:

如何读取并分析谷歌浏览器的访问历史记录(附Python脚本)

你是否曾经想要了解自己浏览器的访问历史记录?可能你对谷歌浏览器的历史记录管理感兴趣,或者想统计自己浏览的网站访问频率?不管是出于哪种原因,通过Python脚本读取和分析浏览器历史记录确实是个不错的选择。本文将详细介绍如何操作,包括脚本代码和实际运行结果。

1. 获取谷歌浏览器的历史记录

谷歌浏览器的历史记录文件位于以下路径:

C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default

进入该目录,即可看到与浏览器相关的各种文件,其中包含详细的历史记录数据。

2. 使用Python读取浏览器历史记录

要读取和解析浏览器的历史记录,需要使用对应的数据库文件。以下是完整的Python3脚本:

# -*- coding: utf-8 -*-"""Created on Fri Jun 22 20:00:02 2018@author: Administrator"""import osimport sqlite3import operatorfrom collections import OrderedDictif __name__ == '__main__':    # 定义数据库路径,注意将上述路径替换为实际路径    data_path = r'C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default'    history_db = os.path.join(data_path, 'history1')        # 连接数据库    conn = sqlite3.connect(history_db)    cursor = conn.cursor()        # 查询所有记录    cursor.execute('SELECT * FROM urls;')        # 获取所有结果    results = cursor.fetchall()        # 显示结果    for d in results:        print(f"ID: {d[0]} \t"             f"URL: {d[1]} \t"             f"Title: {d[2]} \t"             f"visit_count: {d[3]} \t"             f"typed_count: {d[4]} \t"             f"last_visit_time: {d[5]} \t"             f"hiddlen: {d[6]} \t")        conn.close()

3. 运行结果解析

运行上述脚本后,输出将包括所有访问记录的详细信息,包括:

  • 访问ID:记录的唯一标识符
  • 访问URL:访问的具体网页地址
  • 访问标题:网页的标题(如果有)
  • 访问次数:网页被访问的总次数
  • 输入次数:用户对网页的输入次数
  • 最后访问时间:网页最后一次被访问的时间戳
  • 隐藏状态:记录是否被标记为“隐藏”

以下是示例输出(具体结果因浏览器而异):

ID: 1   URL: http://baojia.3hk.cn/301   Title: baojia.3hk.cn    visit_count: 0  typed_count: 0  last_visit_time: 0      hidden: 0  ID: 2   URL: http://blog.csdn.net/SKI_12/article/category/6689258   Title: 提权 - 闲云~ - CSDN博客        visit_count: 0  typed_count: 0  last_visit_time: 0      hidden: 0  ...

4. 统计不同网站的访问频率

如果你想了解哪些网站被频繁访问,可以参考以下脚本:

# -*- coding: utf-8 -*-"""Created on Fri Jun 22 20:00:02 2018@author: Administrator"""import osimport sqlite3import operatorfrom collections import OrderedDictdef parse_url(url):    try:        # 解析URL,提取主域名        parsed_url = url.split('//')[-1].split('/', 1)[0].replace('www.', '')        return parsed_url    except (IndexError, AttributeError):        print('URL格式错误!')if __name__ == '__main__':    # 定义数据库路径    data_path = r'C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default'    history_db = os.path.join(data_path, 'history1')        # 连接数据库    conn = sqlite3.connect(history_db)    cursor = conn.cursor()        # 查询所有记录    cursor.execute('SELECT urls.url, urls.visit_count FROM urls, visits WHERE urls.id=visits.url;')        # 获取所有结果    results = cursor.fetchall()        # 初始化统计字典    sites_count = {}        # 遍历结果并统计    for url, count in results:        url_domain = parse_url(url)        if url_domain in sites_count:            sites_count[url_domain] += 1        else:            sites_count[url_domain] = 1        # 定义排序方式    sorted_sites = sorted(sites_count.items(), key=lambda x: x[1], reverse=True)        # 输出结果    print("网站访问频率统计(前20名):")    for site, count in sorted_sites:        print(f"Domain: {site}, Visit Count: {count}")

5. 运行结果示例

运行上述脚本后,输出将包括如下内容:

Domain: sogou.com, Visit Count: 33  Domain: blog.csdn.net, Visit Count: 17  Domain: hao123.com, Visit Count: 14  Domain: btmayis.com, Visit Count: 10  Domain: v.qq.com, Visit Count: 10  Domain: iqiyi.com, Visit Count: 9  ...

通过上述方法,你可以轻松读取并分析谷歌浏览器的访问历史记录,并统计不同网站的访问频率。希望这篇文章能为你提供有价值的参考!

你可能感兴趣的文章
Networkx写入Shape文件
查看>>
NetworkX系列教程(11)-graph和其他数据格式转换
查看>>
Networkx读取军械调查-ITN综合传输网络?/读取GML文件
查看>>
NetworkX:是否为每个节点添加超链接?
查看>>
network小学习
查看>>
Netwox网络工具使用详解
查看>>
Net与Flex入门
查看>>
Net任意String格式转换为DateTime类型
查看>>
net包之IPConn
查看>>
net发布的dll方法和类显示注释信息(字段说明信息)[图解]
查看>>
Net和T-sql中的日期函数操作
查看>>
Net处理html页面元素工具类(HtmlAgilityPack.dll)的使用
查看>>
Net操作Excel(终极方法NPOI)
查看>>
Net操作配置文件(Web.config|App.config)通用类
查看>>
net网络查看其参数state_dict,data,named_parameters
查看>>
Net连接mysql的公共Helper类MySqlHelper.cs带MySql.Data.dll下载
查看>>
NeurIPS(神经信息处理系统大会)-ChatGPT4o作答
查看>>
neuroph轻量级神经网络框架
查看>>
Neutron系列 : Neutron OVS OpenFlow 流表 和 L2 Population(7)
查看>>
new Blob()实现不同类型的文件下载功能
查看>>