摘要:分享个​ 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. DAX 第一篇:数据模型

    DAX是一种专门用于计算数据模型的业务公式的语言,本文以Power BI的关系来学习数据模型. 一,理解数据模型 数据模型是由一组表和关系构成的结构,表和表之间由关系链接,如下图所示的产品数据模型: ...

  2. CSharp初级篇 1-4 this、索引器、静态、常量以及只读

    .NET Core CSharp初级篇 1-4 本节内容为this.索引器.静态.常量以及只读 简介 在之前的课程中,我们谈论过了静态函数和字段的一小部分知识,本节内容中,我们将详细的讲解关于对象操作 ...

  3. python基础知识五 各类型数据方法补充,转换,分类,编码+坑中菜

    3.9各类型数据方法补充,转换,分类,编码,坑中菜 3.9.1数据类型方法补充 1.str:不可变 补充方法 s1.capitalize():首字母大写 s1 = "alex" s ...

  4. windbg 配置符号路径

    (转)WINDBG的符号下载与符号路径问题 安装与配置 windbg 的 symbol (符号) 本篇是新手自己写的一点心得.建议新手看看.同时希望前辈多多指教. 写这篇的动机:在网上找了一上午的 w ...

  5. TCP概述\三次握手四次挥手\报文首部,常用熟知端口号

    06.26自我总结 1.TCP概述 TCP把连接作为最基本的对象,每一条TCP连接都有两个端点,这种端点我们叫作套接字(socket),它的定义为端口号拼接到IP地址即构成了套接字,例如,若IP地址为 ...

  6. [剑指offer] 40. 数组中只出现一次的数字

    题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了偶数次.请写程序找出这两个只出现一次的数字. 思路: 解法一: 哈希表 class Solution { public: void Find ...

  7. vijos P1911 珠心算测验

    #include<iostream> using namespace std; int main() { int n; int sum = 0; int num[200]; cin > ...

  8. C-哈夫曼编码

    /*author:windy_2*/ /*修正版*/ #include<stdio.h> #include<stdlib.h> #include<string.h> ...

  9. Hadoop自学系列集(一) ---- 使用VMware安装CentOS

     1.概述 笔者的学习环境--在VMware虚拟机下安装四个CentOS系统(搭建Hadoop集群用),其中一个为Master,三个为Slave,Master作为Hadoop集群中的NameNode, ...

  10. 在.NET CORE中使用配置文件:对 ConfigurationBuilder 的使用说明

    示例:ASP.NET MVC 使用示例: 如何覆写默认行为?如取消热更新支持,方法如下: 示例:控制台 使用应用程序参数 使用键值对枚举(这里以字典来说明) 使用JSON文件 注册配置文件中的某一个段 ...