文章来源:早起Python微信公众号作者:刘早起一行Python代码可以导出多个浏览器的历史记录吗?像这样?现在说说原理。不管是Windows还是MAC,Chrome等浏览器的历史数据都保存在本地的SQLite数据库中。例如Windows用户可以到C:\Users\Administrator\AppData\Local\Google\Chrome\UserData\Default,当然在Python中我们可以使用内置的OS模块来查找数据库文件,以及然后利用Python内置的sqlite3模块轻松读取并导出浏览记录数据,这个过程已经发布在GitHub上了,国外小哥帮我们完成了,总共不到200行代码。现在我们只需要使用pipinstallbrowserhistory来安装,然后输入python导入importbrowserhistoryasbh即可。现在我们只需要一行代码就可以查看所有的历史浏览记录。bh.get_browserhistory()JSON格式数据不太好看,可以用pandas转成表格,可以查看指定浏览器的记录,比如Safariimportpandasaspdpd.DataFrame.from_dict(bh.get_browserhistory()['safari'])ExportasCSVbh.write_browserhistory_csv()打开我的Safari记录看,最早的记录其实是去年6月调试Django项目的记录,貌似还没有清空好久了,不过在保存数据的时候有个小插曲,作者在源码中使用CSV模块向CSV表写入数据时使用的编码是UTF-8,会造成中文乱码,所以只要进入源码,把UTF-8改成utf-8_sig,就可以正常保存中文,或者直接复制源码,修改也是可以的。并且注意执行程序时要彻底退出浏览器,否则对应的浏览器记录会丢失。最后,有了上万条浏览记录,就可以做一些简单的分析了。例如,我正在为搜索引擎编程。访问频率最高的网站有百度、谷歌、GitHub、stackoverflow等,当然你也可以写一个简单的脚本并打包,获取某人的浏览记录,看TA上班爱不爱钓鱼,或者找一些基于主题的妹子来访记录,大家随意玩
