摘要:分享个​ Python 神工具。​

长时间使用浏览器会积累大量浏览器历史记录,这些是很隐私的数据,里面甚至可能有一些不可描述的网站或者搜索记录不想让别人知道。

不过,我们自己可能会感兴趣,天天上网是都在摸鱼还是有认真工作。其次,了解下自己每天打开多少次网页、哪些网站上的最多、常搜哪些关键词,这些也很有趣。

下面就来给大家介绍一款 Python 编写的神工具,可以一键分析你的上网行为。我用了后发现了很多不可思议的结论。

比如访问次数最多的网站居然是微信公众号,7000 多次,看来弄自媒体占了大量上网时间。

看到了每天打开网站的次数,平均都有好几百次,8 月 8 号那天发生了什么,竟打开了 1600 多次!

然后又统计了停留时间最长的网页页面,在 http://md.aclickall.com/ 这个网站居然停留了 660 小时,这是个文章排版网站,因为经常要排版所以把该页面固定了起来。

然后统计出了搜索最多的十个关键词,Python 居然是第一位!前十中基本都是数据编程相关的,没想到自己这么爱学习。

最后统计出了各大搜索引擎的使用率。Google 的使用率达到了 97.3%,而百度只有不到 3%。

怎么样是不是挺有意思?下面就来说说怎么用这款工具,让你也可以分分钟了解自己的上网行为,非常简单。

这款 Python 工具其实就是分析浏览器的历史记录数据库文件然后可视化。这里的浏览器只支持 Chrome 和以 Chrome 为内核的浏览器,比如 Centbrower 、360极速浏览器等,其他浏览器比如 ie、Firefox 不支持。如果有登陆账号,桌面端和电脑端会一起分析,更全面。

第一步,打开网址:(网址在下方得到)

接着上传你的浏览器历史记录文件,这个历史记录文件怎么获得呢?

新建一个标签页,输入 chrome://version/ 回车,可以打开你的浏览器详细信息:

复制「个人资料路径」到资源管理器打开,然后找到 history 文件复制一份到桌面。

接着就在刚才的网站中上传该文件(我的文件有 15MB 大),稍等片刻就可以得到上门的那些可视化分析结果。

你可能会担心上传浏览器历史记录是否安全,尽管放心,这个程序是开源的。

下面再简单说下如何用 python 一步步实现的这个程序功能的,这是一个很棒的 python 练手项目,涉及到了前后端的知识,整个程序包含多个文件:

Code
├─ app_callback.py 回调函数,实现后台功能
├─ app_configuration.py web服务器配置
├─ app_layout.py web前端页面配置
├─ app_plot.py web图表绘制
├─ app.py web服务器的启动
├─ assets web所需的一些静态资源文件
│ ├─ css web前端元素布局文件
│ │ ├─ custum-styles_phyloapp.css
│ │ └─ stylesheet.css
│ ├─ image web前端logo图标
│ │ ├─ GitHub-Mark-Light.png
│ └─ static web前端帮助页面
│ │ ├─ help.html
│ │ └─ help.md
├─ history_data.py 解析chrome历史记录文件
└─ requirement.txt 程序所需依赖库

每个程序实现的功能:

具体实现思路大致分为下面几点:

  • 解析历史记录文件数据

历史记录 history 是一个 sqllite 数据库文件,连接数据库查询然后调用数据库中的信息并存储。

  • 配置 web 服务器和前端页面

  • 可视化绘图函数

可视化图形使用的是可交互式的 plotly 库。

完整的程序可以在后台回复:上网分析 得到。

小结

上网记录是很重要的隐私数据,平常自己可能无法从中直接发现什么,使用 python 简单一分析就可以发现很多东西,所以平时尽量注重隐私保护。

完整程序和网站地址可以关注公众号:高级农民工,在后台回复:813 得到。

用 Python 分析上网记录,发现了很多不可思议的事的更多相关文章

  1. Python分析离散心率信号(下)

    Python分析离散心率信号(下) 如何使用动态阈值,信号过滤和离群值检测来改善峰值检测. 一些理论和背景 到目前为止,一直在研究如何分析心率信号并从中提取最广泛使用的时域和频域度量.但是,使用的信号 ...

  2. Python分析盘点2019全球流行音乐:是哪些歌曲榜单占领了我们?

    写在前面:圣诞刚过,弥留者节日气息的大家是否还在继续学习呐~在匆忙之际也不忘给自己找几首好听的歌曲放松一下,缠绕着音乐一起来看看关于2019年流行音乐趋势是如何用Python分析的吧! 昨天下午没事儿 ...

  3. Python爬虫实践 -- 记录我的第二只爬虫

    1.爬虫基本原理 我们爬取中国电影最受欢迎的影片<红海行动>的相关信息.其实,爬虫获取网页信息和人工获取信息,原理基本是一致的. 人工操作步骤: 1. 获取电影信息的页面 2. 定位(找到 ...

  4. Android 获取自带浏览器上网记录

    先是搜索了一下,在manifest里添加 <uses-permission android:name="com.android.browser.permission.READ_HIST ...

  5. C# 程序A发送Log记录给程序B,程序B处理和分析Log记录

    C# 程序A发送Log记录给程序B,程序B处理和分析Log记录 关键字:C# ;Log记录 ;在线Log记录;Socket:httplistener 一.常用场景 1. APP开发,在真机或者虚拟机上 ...

  6. Python爬虫个人记录(三)爬取妹子图

    这此教程可能会比较简洁,具体细节可参考我的第一篇教程: Python爬虫个人记录(一)豆瓣250 Python爬虫个人记录(二)fishc爬虫 一.目的分析 获取煎蛋妹子图并下载 http://jan ...

  7. Python爬虫个人记录(二) 获取fishc 课件下载链接

    参考: Python爬虫个人记录(一)豆瓣250 (2017.9.6更新,通过cookie模拟登陆方法,已成功实现下载文件功能!!) 一.目的分析 获取http://bbs.fishc.com/for ...

  8. 用Python分析国庆旅游景点,告诉你哪些地方好玩、便宜、人又少

    注:本人参考“裸睡的猪”公众号同名文章,学习使用. 一.目标 使用Python分析出国庆哪些旅游景点:好玩.便宜.人还少的地方,不然拍照都要抢着拍! 二.获取数据 爬取出行网站的旅游景点售票数据,反映 ...

  9. python 分析慢查询日志生成报告

    python分析Mysql慢查询.通过Python调用开源分析工具pt-query-digest生成json结果,Python脚本解析json生成html报告. #!/usr/bin/env pyth ...

随机推荐

  1. Centos7 安装jdk,MySQL

    报名立减200元.暑假直降6888. 邀请链接:http://www.jnshu.com/login/1/20535344 邀请码:20535344 学习阿里云平台的云服务器配置Java开发环境.我现 ...

  2. 七牛云图床和Markdown使用

    七牛云图床和Markdown使用 1.图床是什么? 图床一般是指储存图片的服务器,有国内和国外之分.国外的图床由于有空间距离等因素决定访问速度很慢影响图片显示速度.国内也分为单线空间.多线空间和cdn ...

  3. 【字符串】P2084 进制转换-C++

    题目描述 今天小明学会了进制转换,比如(10101)2 ,那么它的十进制表示的式子就是 : 1*2^4+0*2^3+1*2^2+0*2^1+1*2^0, 那么请你编程实现,将一个M进制的数N转换成十进 ...

  4. Unity 3d 脚本常用事件

    1.学习笔记,每天晚上看看unity 3d 的教程 学点东西,先上一张图 这是 系统中脚本执行的顺序图 Awake()在MonoBehavior创建后就立刻调用,在脚本实例的整个生命周期中,Awake ...

  5. 字符串如何实现反转?python实现

    今天和一个同事出去吃饭,突然话风转变,考了问我一个问题,他说哥,你知道字符串怎么反转吗? 我想了想,我擦,回家看我博客.作为一个资深开发,怎么可能被一个毛头小子问住了! 于是,我今天就稍微的整理了一下 ...

  6. 个人永久性免费-Excel催化剂功能第63波-当前选择区域的上下左右平移功能及跳转窗口左上角

    日常的Excel使用过程中,大部分的时间是在做选择单元格的操作,一般来说都是对指定单元格区域的内容进行一些数据处理.转换生成新数据的过程,那选择指定单元格的步骤,若能够尽最大程度地效率上得到加速,产出 ...

  7. 一个测试文件与源文件位于不同模块时Jacoco覆盖率配置的例子

    问题描述: 我们有个多模块项目,由于种种原因(更常见的可能是需要集成测试)测试文件和源文件不在一个模块,Jacoco的覆盖率无法正确显示,查询了一些资料,发现中文的例子比较少,就把我自己的Demo贴一 ...

  8. 初识nginx!

    What--什么是nginx nginx是一款高性能的http服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.官方测试nginx能够支撑5w并发连接.并且cup.内存等资源消耗却非常 ...

  9. Spring管理事物两种方式

    Spring管理事物两种方式 1. 编程式事物管理(在开发中不经常使用) 使用步骤 1. 配置数据库事物管理 DataSourceTransactionManager <!--配置事物管理器-- ...

  10. JDK(Windows)

    百度云:链接:http://pan.baidu.com/s/1dEEsIUd     密码:15cn 官网下载网址:http://www.oracle.com/technetwork/java/jav ...