Python之自动获取目标网站最新通知:
1、建立通知数据库
这一步的目的是爬取目标网站已经发布的通知的数据,并进行存储,从而建立与该目标网站内容相对应的本地数据库。
考虑到数据库中的数据将是辨别和获取一则新通知的唯一方法,因此所建立的数据库将存储每一条通知的标题、发布日期和访问链接。
第一步使用到的模块有urllib、BeautifulSoup和sqlite3模块。其中,通过urllib模块爬取目标网页html数据;通过BeautifulSoup模块解析网页数据、爬取网页内容;通过sqlite3模块建立目标网站已有通知数据库。
该步主要代码展示如下。
2、建立邮件发送系统
这一步的目的是使用Python标准库模块smtplib来访问网络,创建一个发送电子邮件的功能。
由于我们大部分人的计算机并没有建立自己的邮件服务器,因此需借助第三方服务器来模拟邮件发送。
常用的有谷歌邮件系统、网易邮件系统和QQ邮件系统,如QQ邮件系统的SMTP服务器和端口号分别为smtp.qq.com和465。
该步主要代码展示如下。
在这个示例中,使用了Python标准库中的email模块将电子邮件信息进行了格式化,主要包括邮件的主题与发件人、收件人邮箱昵称和邮件内容等信息。
3、解析检测目标网站通知
前面两步,已经完成了目标网站已有通知数据库和邮件发送系统的建立,第三步要完成的工作,主要由两部分组成。
一是,利用第一步使用的urllib、BeautifulSoup模块解析目标网站内容数据,并与前面建立的数据库进行对比检测。
二是,若检测到目标网站有新的通知,则将新通知数据插入到数据库中,然后,发送提示电子邮件。
该步主要代码展示如下。
在这个示例中,只选取了最新的一条通知发送了电子邮件提示,具体邮件信息可自己设定。
4、制定计划任务
前面三步,已经完成了使用Python获取目标网站最新通知,并发送提示电子邮件的脚本程序。
在这一步,将使用Windows自带的DOS命令框架和任务计划程序去每小时自动运行一次Python脚本,实现自动更新通知的目的。
首先,需要编写一个cmd命令文件,方便在DOS框架下执行Python脚本。
主要代码展示如下:
@echo off # 关闭回显 cd C:\demo # 找到Python脚本文件的路径 python Python.py # 执行Python脚本文件
最后,使用任务计划程序制定一个任务,可设定为每隔一小时自动运行一次cmd命令文件。
更多python进阶知识,请观看!!