美文网首页大数据 爬虫Python AI Sql
教大家一招用Python实时监控自己的女朋友每天上网都在做什么!

教大家一招用Python实时监控自己的女朋友每天上网都在做什么!

作者: 3593e1bf5b19 | 来源:发表于2018-12-20 21:43 被阅读7次

    这个操作还是尽量少用点,发现了要被打死打残的哈哈哈!

    需求

    背景

    1、mac下chrome的浏览记录查看,获取网址(url)和访问时间。

    路径:/Users/用户名/Library/Application Support/Google/Chrome/Default/History;History:是一个SQLite数据库,其实就是一个文件,可以用DB Browser for SQLite ;去查看所有的信息,我们要的信息在urls表中;怎么获取:用python内置的sqlite3库连接History,通过sql得到我们想要的信息。

    2、发送一个带附件的邮件

    用email和smtplib这两个python内置模块去构造和发邮件

    3、将这些过程自动化

    用shell脚本把这些过程连接起来,再用crontab命令定时运行。

    要求

    macOS Sierra、Python3.6、Chrome、发邮件的qq邮箱地址、qq邮箱授权码、SMTP服务器地址 : smtp.qq.com、接受邮件的邮箱地址。

    代码


    在这里相信有许多想要学习Python的同学,大家可以+下Python学习分享裙:叁零肆+零伍零+柒玖玖,即可免费领取一整套系统的 Python学习教程!

    执行

    1、我们先用DB Browser for SQLite看看History中的urls表的数据组成

    2、get_history.py:通过这个脚本,我们可以把url和访问时间提取出来,并且存储在result.txt中,下图就是我得到的部分结果。

    3、send_email.py:通过这个脚本,我们可以把result.txt作为附件,发送给指定邮箱地址,下图是我得到的部分结果。

    4、/start.sh :其实前面几个脚本已经完成了我们的任务,但如果每次都执行这么多脚本,那就太麻烦了,我们可以把这些脚本的执行语句整理成一个shell脚本。

    说明:前面两个数字,就是你每天执行这个脚本的时间,我这里设置的是14:20。

    重要的事再说一遍,一定要写绝对路径!!!

    问题

    server.login(from_addr, password)函数中的password不是邮箱密码,在qq邮箱中,指的是授权码。

    答:qq邮箱授权码:什么是授权码,它又是如何设置?_QQ邮箱帮助中心

    timestamp时间戳怎么转换的

    答:last_visit_time是微秒,所以要除以10^6;

    last_visit_time的起始值是1601年1月1日0时0分0秒,所以要减去11644473600;筛选昨天的数据:现在的日期与last_visit_time的差值小于1的数据,就是距离当前时间小于1天的数据

    展望:

    1.把这些打包成一个可执行文件,双击之后可以直接部署,并且可以跨平台。

    2.目前这个脚本,只有在电脑是打开并且联网的时候,才能自动执行,所以并不能理想地监控别人的浏览记录哦!

    相关文章

      网友评论

        本文标题:教大家一招用Python实时监控自己的女朋友每天上网都在做什么!

        本文链接:https://www.haomeiwen.com/subject/imxukqtx.html