利用Python和Selenium编程,实现定时自动检索特定网页,发现特定网页内容发生变化后,向管理员发送提醒邮件(一)

一、项目需求

要求爬取某单位网站,登录后台查看是否有新增"网友提问",如果有新的提问,向特定邮箱发出提醒邮件。

二、项目分析

(一)判断是否可用爬虫爬取相关内容

首先查看该网站的robots.txt文件,发现不存在该文件,由于未禁止,可用爬取取相关信息。

(二)操作流程分析

查看是否有网友提问的操作流程如下。

1、登录网站后台管理页面

2、登录成功后,点击"互动平台" 。

3、点击互动平台后,浏览器会打开新页面(互动平台)

4、互动平台页面上端有一个选项卡,在选项卡中可以选择"依申请公开"或是"网上问答",但已选项显示内容是"依申请公开"还是"网上问答",无法预见,这其由最后一次对选项卡的操作决定。互动平台页面右侧显示的是待办办件,这里显示的就是需要提醒的内容。

在这里,我们需要查看"网上问答"部分有无新的问题,有新问题的话需要通过邮件提醒管理员。

三、解决方案和所需知识

由于访问特定信息需要进行一系列操作互动,由于Selenium可以操作浏览器,不用理会涉及页面渲染一类的复杂问题,所以这里我们选择Selenium作为爬虫解决方案。

第一步需要通过Python和Selenium实现对浏览器的相关操作,获取特定网页中的内容。

第二步是通过电子邮件将提醒内容发至管理员。

需要学习Python、HTML、Selenium,以及如何通过Python利用SMTP服务器发送信息有关的知识。

下面我们分几步进行学习,首先学习如何利用Python和Selenium操作浏览器和获取页面中的信息。

相关推荐
淮北4942 分钟前
windows安装minicoda
windows·python·conda
Evand J39 分钟前
【MATLAB例程】基于USBL和DVL的线性回归误差补偿,对USBL和DVL导航数据进行相互补偿,提高定位精度,附代码下载链接
开发语言·matlab·线性回归·水下定位·usbl·dvl
爱喝白开水a2 小时前
LangChain 基础系列之 Prompt 工程详解:从设计原理到实战模板_langchain prompt
开发语言·数据库·人工智能·python·langchain·prompt·知识图谱
Neverfadeaway2 小时前
【C语言】深入理解函数指针数组应用(4)
c语言·开发语言·算法·回调函数·转移表·c语言实现计算器
武子康2 小时前
Java-152 深入浅出 MongoDB 索引详解 从 MongoDB B-树 到 MySQL B+树 索引机制、数据结构与应用场景的全面对比分析
java·开发语言·数据库·sql·mongodb·性能优化·nosql
杰克尼2 小时前
JavaWeb_p165部门管理
java·开发语言·前端
一成码农2 小时前
JavaSE面向对象(下)
java·开发语言
偶尔的鼠标人3 小时前
Avalonia DataGrid 控件的LostFocus事件会多次触发
开发语言·c#
晚风残3 小时前
【C++ Primer】第十二章:动态内存管理
开发语言·c++·c++ primer
_extraordinary_3 小时前
Java Spring日志
java·开发语言·spring