1. 两行代码搞定历史浏览器记录

偶然间遇到一个第三方库,竟然可以只用两行代码就能获得浏览器的历史浏览记录,再一次感叹python社区的强大。

使用pip安装

pip install browserhistory

代码示例

import browserhistory as bh

bh.write_browserhistory_csv()

整个源码只有区区不到200行,但却可以轻松的获取谷歌,火狐,safari 这三种浏览器的历史浏览记录,而且支持,mac, linux, windows三种平台。

运行程序,会在当前工作目录下生成浏览器对应的历史记录文件,格式为csv,内容包括url,标题,时间。

2. 源码解读

保持一颗好奇心,是做技术必备的素养。作者是如何做到在不同的平台上获取这三种浏览器的历史浏览记录的呢?打开源码,我们一探究竟。

作者首先通过sys.platform 获得了平台的名称,据此得知当前程序运行在哪种操作系统上。

谷歌,火狐,safari 的历史浏览记录都保存在user目录下的固定位置,因此只要知道当前登录用户的user目录就以获得准确的位置。作者在get_database_paths 函数中,根据平台的不同,使用了不同的方法来确定user目录。

这三种浏览器的数据都存储在sqlite3中,get_browserhistory函数分别将这三种浏览器的历史浏览器记录从数据库中读取出来,这个过程需要你关闭浏览器,浏览器和你的程序无法同时操作sqlite3。

最后一步,使用csv模块,将不同的浏览器历史浏览记录写入到csv文件中。

受限于篇幅,每段代码只截取关键内容,感兴趣的朋友可以下载源码仔细研究,本文仅做大概介绍

3. 收获

学习使用第三方库,阅读其源码,是非常有效的提升技术水平的途径,不到200行的代码,认真阅读,可以收获以下知识

sys.platform

csv 模块使用

sqlite3 读取数据库

获得不同平台,当前登录用户的user目录

os.path 模块的用法

python清除历史记录_只需python两行代码,就能获取你的浏览器历史浏览记录相关推荐

  1. easyui onclickrow 中获取列名_获取Chrome浏览器历史浏览记录实例

    1.获取谷歌浏览器浏览历史保存位置,并拷贝一份到操作目录下2.找到浏览记录文件 "History"3.将"History"文件导出到其他目录下4.查看数据库ta ...

  2. lstm代码_只需5行代码!LSTM时间序列建模以及预测

    最近我在github上看到一个项目,项目内容是将深度学习方法(LSTM.RNN.GRU)进行时间序列建模的过程进行了封装,使得调用者调用者只需5行代码能完成时间序列建模以及预测的全过程. 项目本身是使 ...

  3. python发音机器人_只需三步,菜鸟也能用Python做一个简易版Siri

    原标题:只需三步,菜鸟也能用Python做一个简易版Siri 当下,各个手机厂商都陆续的推出了属于自己的智能手机机器人,像是苹果的Siri,小米的小爱,还有等等.这些智能机器人不仅仅方便了我们对于手机 ...

  4. python远程控制电脑_只需一个python脚本就可远程控制电脑,打开微信即可远程遥控操作...

    原标题:只需一个python脚本就可远程控制电脑,打开微信即可远程遥控操作 今天带给大家一个非常有意思的 python 程序,基于 itchat 实现微信控制电脑.你可以通过在微信发送命令,来拍摄当前 ...

  5. c++编写手机小游戏代码_只需22行代码,用python编写自己的小游戏

    假期最后一天,有些人在外面玩累了,有些人躺在家里快发霉了,闲暇时候不如动动手做个小游戏玩一玩吧! 本文实例为大家分享了python编写猜数字小游戏的具体代码,供大家参考,具体内容如下 1 import ...

  6. 上传至微信服务器端的图片在界面中展示的时候,显示此图片来自公众平台未经允许不可引用,解决办法只需加两行代码

    此图片来自公众平台未经允许不可引用 上传至微信服务器端的图片在界面中展示的时候如上图不显示图片显示 为此图片来自微信公众平台,未经允许不可引用 解决办法: 在界面的html页面头部head加入以下这两 ...

  7. 爬取三千条数据需要多久_只需几十行代码,Python就能轻松爬取 3000+ 上市公司的信息...

    点击关注"Python学习与数据挖掘" 更多超级干货第一时间推送给你哦!!! 入门爬虫很容易,几行代码就可以,可以说是学习 Python 最简单的途径.刚开始动手写爬虫,你只需要关 ...

  8. python弹幕代码_只需3 行代码就可以获取B站(弹幕、评论、用户)数据

    在今年5月份,我写了一篇爬取B站视频的文章,今天给大家介绍一个获取B站数据的Python扩展库-bilibili_api,可以获取的数据包括: video-视频模块 user-用户模块 dynamic ...

  9. 计算机用什么命令调取共享记录,只需一串代码命令就可以获取你的电脑所有的无线网历史连接记录?...

    这个CMD可能是Windows 保留的跟Dos 系统最相似的一个功能了,黑色的界面通过敲代码来达到其设定的功能, 但是有多少人会用呢?其实如果你会使用,你会发现:它真的很强大! Windows 7 S ...

  10. java和python的比较-如何对比Python和Java,只需三分钟告诉你!

    原标题:如何对比Python和Java,只需三分钟告诉你! Java和Python两门语言都是目前非常热门的语言,可谓北乔峰南慕容,二者不分上下,棋逢对手.但是对于初学者来说,非常困惑,因为时间和精力 ...

最新文章

  1. TensorFlow22: 手写汉字识别
  2. CMD命令查看当前电脑安装.NET Core SDK的版本号
  3. SNMP协议介绍和操作截图
  4. 对计算机技术的发展方向研究,网络技术发展对计算机技术的影响
  5. 计算机技术在排水领域的应用,浅谈计算机技术在市政给排水中的应用.doc
  6. 性能测试—前端性能1
  7. J .U.C 简介-Lock
  8. 【gRPC】 在.Net core中使用gRPC
  9. 学习较底层编程:动手写一个C语言编译器
  10. PPTP与Open×××区别
  11. 每天执行一次批处理_关于静态批处理/动态批处理/GPU Instancing /SRP Batcher的详细剖析...
  12. nvm for window 开源资源(免费下载)
  13. 错误java.lang.NoClassDefFoundError: org/jaxen/VariableContext
  14. java超市运行程序源代码_Java课程设计超市库存管理系统附源代码可以直接运行...
  15. 部落战争COC免费获得绿宝石 内购农民攻略
  16. php处理excel图表,php导入excel的图片
  17. python OOP面向对象笔记
  18. 西班牙出差见闻之二(人情风俗)
  19. 微信小程序和H5网页之间有什么区别?
  20. Invalid MEX-file 'C:\Users\zs\Desktop\CSR-DCF\mex\mex_extractforeground.mexw64': 找不到指定模块

热门文章

  1. 设置新版谷歌浏览器自动启用flash
  2. python 公众号引流_公众号粉丝从0到1000的引流思路
  3. 【2017年蓝桥杯Java-B组省赛题解】
  4. 在线生成 html 页面,细说在线版H5页面生成器
  5. aizu 0121 Seven Puzzle
  6. Execl单元格图片锁定----一定能
  7. WPS如何在同一篇文档针对不同章节设置不同的页眉页脚
  8. Adobe Acrobat 裁剪pdf
  9. 概率论基础 - 6 - 切比雪夫不等式
  10. vue生命周期的快速记忆方法