刺激!一行代码即可导出所有浏览记录

December 17, 2023
测试
测试
测试
测试
1 分钟阅读

作者:刘早起

来源:早起Python

一行Python代码即可导出多种浏览器的历史记录?就像这样?

现在来说说原理,不管是Windows还是MAC,Chrome等浏览器的历史数据都是存储在本地的SQLite数据库中,例如Windows用户可以在C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default找到,当然在Python中我们可以使用内置OS模块找到该数据库文件,再使用Python内置的sqlite3模块可以轻松读取并导出浏览记录数据,而这个过程在GitHub上已经有一位外国小哥帮我们完成了,总共不到200行代码,现在我们只要使用pip install browserhistory安装,接着进入Python导入

import browserhistory as bh

现在只要一行代码即可查看全部历史浏览记录

bh.get_browserhistory()

JSON格式数据不怎么好看,可以借助Pandas转换为表格,并且可以查看指定浏览器的记录,比如Safari

import pandas as pd
pd.DataFrame.from_dict(bh.get_browserhistory()['safari'])

当然也可以一行代码将历史记录导出为CSV

bh.write_browserhistory_csv()

打开我的Safari记录看看,最早的一条记录居然是去年6月的调试Django项目的记录,看来很久没有清空了

但是在保存数据时有一个小插曲,作者在源码中使用CSV模块来将数据写入CSV表格时使用的编码是UTF-8,这会导致中文乱码

所以只要进入源码将UTF-8改为utf-8_sig就能正常保存中文了,或者直接copy过来源码并修改也是可以的。并且要注意执行程序时要彻底退出浏览器,否则会丢失对应浏览器的记录。

最后,有了几万条浏览记录,就可以进行一些简单分析,比如面向搜索引擎编程的我,最常访问的网站就是百度GoogleGitHubstack overflow等,当然你也可以写一个简单的脚本并打包,获取某人的浏览记录,看看TA上班是不是爱摸鱼,或者根据妹子的访问记录来找点话题,大家自由发挥。

继续阅读

更多来自我们博客的帖子

如何安装 BuddyPress
由 测试 December 17, 2023
经过差不多一年的开发,BuddyPress 这个基于 WordPress Mu 的 SNS 插件正式版终于发布了。BuddyPress...
阅读更多
Filter如何工作
由 测试 December 17, 2023
在 web.xml...
阅读更多
如何理解CGAffineTransform
由 测试 December 17, 2023
CGAffineTransform A structure for holding an affine transformation matrix. ...
阅读更多