如何利用Python监控你女/男朋友每天都在浏览什么网站?

news/2024/5/20 22:48:22/文章来源:https://blog.csdn.net/m0_59236602/article/details/122633636

需求:

(1) 获取你对象chrome前一天的浏览记录中的所有网址(url)和访问时间,并存在一个txt文件中

(2)将这个txt文件发送给指定的邮箱地址(你的邮箱)

(3)建立例行任务,每天定时自动完成这些操作,你就可以通过邮件查看你对象每天看啥了

背景:

(1)mac下chrome的浏览记录在哪?怎么获取网址(url)和访问时间?

答:路径:/Users/用户名/Library/Application\ Support/Google/Chrome/Default/History

History:是一个SQLite数据库,其实就是一个文件,可以用DB Browser for SQLite

去查看所有的信息,我们要的信息在urls表中

怎么获取:用python内置的sqlite3库连接History,通过sql得到我们想要的信息

(2)怎么发送一个带附件的邮件?

答:使用python内置的email和smtplib两个模块去构造和发送邮件

(3)怎么把这些过程自动化?

答:使用shell脚本将这些过程连接起来,然后使用crontab命令定时运行

requirements:

macOS Sierra

Python3.6

Chrome

发送邮件的qq邮箱地址

qq邮箱授权码

SMTP服务器地址 : smtp.qq.com

接受邮件的邮箱地址

代码:

1. get_history.py

2. send_email.py

3. start.sh

4. crontab -e

执行:

(1) 首先我们用DB Browser for SQLite来看下History中的urls表的数据组成

从表中可以看出,我们要的网址和访问时间就在urls.url和urls.last_visit_time中

image.png

(2) get_history.py:通过这个脚本,我们可以把url和访问时间提取出来,并且存储在

result.txt中,下图就是我得到的部分结果

image.png

(3) send_email.py:通过这个脚本,我们可以把result.txt作为附件,发送给指定邮箱地

址,下图是我得到的部分结果

image.png
image.png

(4) ./start.sh :其实,前面几个脚本,已经完成了我们的任务,但是每次都执行这么多脚

本,太麻烦了,我们可以把这些脚本的执行语句整理成一个shell脚本。

cp /Users/Marcel/Library/Application\ Support/Google/Chrome/Default/History /Users/Marcel/Desktop/tmp/code/chrome_history/
python /Users/Marcel/Desktop/tmp/code/chrome_history/get_history.py
python /Users/Marcel/Desktop/tmp/code/chrome_history/send_mail.py /Users/Marcel/Desktop/tmp/code/chrome_history/result.txt

这样,我们在终端执行./start.sh,系统就会帮我们把这三条语句依次执行了

注意:由于crontab命令需要绝对路径,所以这里的路径都是用绝对路径

(5) crontab :如果使用了这个命令,在电脑开机并且联网的情况,系统会自动执行,然后把结果发到你的邮箱

使用方法:在终端下输入crontab -e,使用vim输入下面一行代码就可以了

20 14 * * * /Users/Marcel/Desktop/tmp/code/chrome_history/start.sh

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

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

问题:

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

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

2.访问History数据库时,显示The database is locked!

答:在我们打开浏览器的同时去访问History时,就会出现这种情况,有两种解决办法:

(1)关闭浏览器,再去访问

(2)把History拷贝到其他文件夹中,然后访问该文件夹下的History

3.timestamp时间戳怎么转换的

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

last_visit_time的起始值是1601年1月1日0时0分0秒,所以要减去11644473600;

筛选昨天的数据:现在的日期与last_visit_time的差值小于1的数据,就是距离当前时

间小于1天的数据

4.crontab出错

答:crontab中所有路径都要写绝对路径,包括py脚本中的路径也要写绝对路径!

总结:

1.运用python连接SQLite数据库,并执行sql操作

2.运用python发送邮件

3.运用shell和crontab建立自动化例行任务

4.看别人隐私是不对的,这篇文章只是我自己瞎玩的,实际可行性不强

Python经验分享

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
9f49b566129f47b8a67243c1008edf79.png

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

8c4513c1a906b72cbf93031e6781512b.png

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

afc935d834c5452090670f48eda180e0.png

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

252731a671c1fb70aad5355a2c5eeff0.png

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

6c361282296f86381401c05e862fe4e9.png

d2d978bb523c810abca3abe69e09bc1a.png
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_792194.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

给你8个接私活的网站,保证你月薪轻松上W

今天给大家推荐几个江湖卖艺赚钱养家的好渠道(程序员:8个接私活的网站,只要你有码,那“我”就有钱!)一起来看看吧! 1、程序员客栈 https://www.proginn.com/ 2、快码众包 https://www.kuai.m…

不会吧,学过爬虫连这个网站都爬不了?那Python岂不是白学了

本文内容 系统分析目标网页html标签数据解析方法海量图片数据一键保存 环境介绍 python 3.8pycharm 模块使用 requests >>> pip install requestsparsel >>> pip install parseltime 时间模块 记录运行时间 通用爬虫 导入模块 import requests # 数…

工程师英语和计算机证书查询,点击进入国家硬件维修工程师证书查询网站

工程师证书查询网站人力资源社会保障部指定查询国家职业资格证书的唯一官方网站。涵盖全国各省市、各行业、各央企颁发的证书。电脑硬件维修工程师网上能查看国家工信部硬件维修工程师证书查询网址:http://www.ceiaec.org/index.htm工程师证书编号在网上怎么查询如果…

根目录_怎样找到网站根目录?

什么是根目录?什么是根目录?根目录,或根文件夹,是顶层目录一个的文件系统。目录结构可以直观地表示为上下颠倒的“树”,因此术语“ root ”代表顶层。所有其它目录、子目录、目录的“分支”等都储存在根目录中。尽管所…

网站服务器怎么理解,http请求的原理怎么理解

(1)是请求方法,GET和POST是HTTP中最常用的方法,除了DELETE、HEe、OPT、NS、PUT和Sea之外。但目前大多数浏览器仅支持GET和POST。它提供了一个HiddenHtyMethodFilter,可以让你通过“_method”的表单参数来指定这些特殊的HTTP方法(实际上&#…

Tornado 网站demo 二

连接数据库 methods 中建立一个文件 db.py 分别建立起连接对象和游标对象 #!/usr/bin/env Python # codingutf-8import pymysql conn pymysql.connect(host"localhost", user"root", passwd"123456", db"testdb", port3306, charset&…

【redux】详解react/redux的服务端渲染:页面性能与SEO

亟待解决的疑问 为什么服务端渲染首屏渲染快?(对比客户端首屏渲染) react客户端渲染的一大痛点就是首屏渲染速度慢问题,因为react是一个单页面应用,大多数的资源需要在首次渲染前就加载好,这较大程度地拖慢…

顶级白嫖!!!八个python免费自学网站一周搞定python(抓紧收藏)。。

导读 人工智能必将到来,在那个时代,我们的工作方式会发生很大的改变,尤其是Python都已经进入了中小学教育的大纲,在智能为主的时代,Python就像现在的电脑一样,每个人工作中必备的工作技能,学会…

新手学电脑入门教程_适合新手程序员学习编程的10个常用网站,超实用

我们很多程序员刚学习时都到处找资源,今天小编我把最常用的10个编程网站分享给大家,大家只要经常浏览这10个网站,学好编程足够了。1、 Googlehttps://www.google.com/2、Stackoverflowhttp://stackoverflow.com/3、githubhttps://github.com/…

页面布局让footer居页面底部_谷歌SEO的网站页面内链布局3大方法!

在谷歌SEO里,网站中内链的重要性不言而喻。对于用户来说,合理的网站内链可以方便用户读取有用的信息,提升用户粘性,降低跳出率。从谷歌搜索引擎来说,合理的网站内链,不仅能够吸引谷歌搜索引擎蜘蛛的抓取&am…

阿里云云主机搭建网站攻略 - 云翼计划

阿里云服务器(云主机)搭建网站攻略 - 云翼计划 提示:此搭建攻略为2017版本,阿里云未跟新前。 最新搭建攻略请前往 Amaya丶夜雨博客 / 最新个人博客 https://www.amayaliu.cn 支持一下哦,谢谢。(9.5一…

在网站中添加 https 百度分享

博客地址:http://www.moonxy.com 一、前言 百度分享是一个提供网页地址收藏、分享及发送的 WEB2.0 按钮工具,借助百度分享按钮,网站的浏览者可以方便的分享内容到人人网、开心网、QQ空间、新浪微博等一系列 SNS 站点。 网站主可以在百度分享网…

python3.6使用django-oscar搭建商店网站_使用Django搭建网站实现商品分页功能

装好Django,写好index.html后,可以展示网页了。但是这只是静态页面,没有关联数据库,也不能分页展示商品信息。本节连接mongodb数据库(事先已准备好数据),从中取出几十条商品信息,每页展示4个商品信息&#…

如何利用SEO赚钱(一个月入万元的简单网站)

有人说做SEO不赚钱,而实际上只要你选对了项目,就算你seo做的非常烂,那么一样是可以赚到钱的,小编试着做了一个这么简单的网站,一个月的时间,收获了不少。 没错,小编做的是一个辅助工具网站&…

零基础建站教程(二)宝塔面板的使用和CMS的安装

宝塔面板相关操作 修改用户名和密码 接着上一节,我们已经安装好了宝塔面板,接下来首先一定要修改你的用户名和密码,选择面板设置进行修改。 添加网站 选择网站,点击添加,这里填写自己的域名(必须要有域名&a…

路由器架设虚拟服务器让外网访问到本地网站

路由器架设虚拟服务器让外网访问到本地网站 https://jingyan.baidu.com/article/6f2f55a18e7998b5b93e6c8b.html 分步阅读 此文目的演示如何通过路由器设置,让外网可以访问到内网中的某一台电脑,也可以是电脑上架设的本地网站。 此方法只适合同网访…

jQuery-在网站上注册新账号时,“同意并接受”效果的实现

大家都知道,当我们在一个新的网站或者应用上注册账号时,必须先要同意它们的规章制度,才可以进行下一步操作,下面我们就分别用DOM对象和jQuery对象来简单实现以下。 效果描述:当鼠标点击文字前面的复选框时,…

linux 下 关于xampp 的apache 修改默认端口和 修改默认网站路径 以及phpadmin外网访问方法

一:修改默认端口并且对外网访问 打开默认安装路径下的httpd.conf文件 修改 Listen 后需要的端口(默认为80) 二,设置对外访问 修改目录的访问权限如下(大概212行左右) 打开默认安装目录下 下图文件 修改目录…

latex 插入网站连接_搞定LaTeX论文中的表格

论文中的表格制作一直是令人头疼的事情,直到我遇见了这个Excel插件。在此之前,我用过一些其他的小工具,例如在线的latex表格生成器 以及离线的LaTable软件 。他们虽然部分解决了手动写latex表格的麻烦,但是他们都有一个问题&#…

zblog插件 php,ZBlogSEO插件

更新方法:停用插件->更新插件->启用插件做好网站SEO一直是站长们的愿望,可是网站SEO需要注意的地方太多,一个不小心被百度K了都不知道怎么回事。这款ZBlogSEO插件则可以减轻你的优化负担,让网站排名更靠前。插件功能&#x…