python数据变更邮件提醒_Python之Bilibili自动更新邮件提醒并任务栏图标「完整代码」...
前言
本次分享的是小编经过多日编写的关于自动检测B站Up主视频更新情况,并发送邮件提醒更新的Python程序,代码不专业、部分代码段借鉴网上,仅供参考娱乐!
用到的库
selenium、_thread、sys、time、re、os、bs4、win32gui/win32con/win32api/winerror、smtlib、email、
灰色的表示没用到
环境及编译器
Python3.6
PyCharm
效果图
本来想做一个GUI,界面做好了,但跟程序连接部分还没搞定:
正式开始
一、打开网页
为了简便,使用Python自动化测试工具 -- selenium,Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE、Mozilla Firefox、Mozilla Suite等,小编使用的是火狐。当然,如果不想看到浏览器,还可以使用“phantomjs”,这需要去官网下载exe文件(windows用户)。这两个怎么用不是本文重点,大家可以自行搜索。
以phantomjs为例,启动浏览器:
driver = webdriver.PhantomJS()
打开网页:
driver.get(geturl)
然后通过bs4解析页面:
Soup = BeautifulSoup(driver.page_source,'lxml')
通过F12分析B站页面,并确定搜索规则:
随便选的
参考参考小编的代码吧:
二、邮箱发送
大部分邮箱对于第三方使用,都要求有授权码来代替密码,以QQ邮箱为例(来自百度经验):
1.登录电脑版QQ邮箱,选择最上方的“设置”
2.选择“账户”,切换到账户详情页面。
3.在账户页面往下拉,可以看到pop3设置,选择“开启”。
4.按照弹出的窗口提示操作进行密保验证。有多种方式可以验证,比如手机令牌等。推荐使用短信验证。
5.按照短信验证的提示发送短信。发送成功后直接点击“我已发送”。
6.弹出的提示中直接显示16位的授权码,可以复制下来,或者是记下来,千万不要记错了。然后点击“确定”。
7.下方的收取选项一般是默认30天的,点击下拉箭头,选择“全部”,并点击页面最下方的保存更改。千万别忘了点击保存,不然之前做的都白费了。
然后就可以套用模板编写代码了:
三、创建任务栏图标
左击图标隐藏界面,右击图标恢复窗口,左双击图标退出程序
此部分代码量较大,调用了win32官方demo,仅供参考:
四、多线程
任务栏显示图标和查询程序相当于是两个独立的部分,通过一条线连接起来。也就是说,运行查询,图标就会卡死、运行图标,查询就会暂停——所以需要用到多线程。Python3.6有_thread和threading模块,本程序用的是简单的_thread,并且没优化(小编边学边做边发稿,没看全呢、),有兴趣的可以优化一下噻~~
五、主函数部分
六、打包为exe
使用pyinstaller进行打包,注意如果要将exe分享给伙伴们,记得将phantomjs也放在同一文件夹下,再压缩包发出去。如何使用pyinstaller进行打包,可以参考小编之前发过的文章,可进入小编主页查找。
结语
如果需要本程序的exe文件,可以进入https://pan.baidu.com/s/1mkl96NA 密码:v2w0。若链接失效,希望大家及时提醒小编进行更新。
python数据变更邮件提醒_Python之Bilibili自动更新邮件提醒并任务栏图标「完整代码」...相关推荐
- Python之Bilibili自动更新邮件提醒并任务栏图标「完整代码」
前言 本次分享的是小编经过多日编写的关于自动检测B站Up主视频更新情况,并发送邮件提醒更新的Python程序,代码不专业.部分代码段借鉴网上,仅供参考娱乐! 用到的库 selenium. _threa ...
- python任务栏通知区域_Python之Bilibili自动更新邮件提醒并任务栏图标
前言 本次分享的是经过多日编写的关于自动检测B站Up主视频更新情况,并发送邮件提醒更新的Python程序,代码不专业.部分代码段借鉴网上,仅供参考娱乐! 用到的库 selenium._thread.s ...
- python email模块详解_Python使用email模块对邮件进行编码和解码的实例教程
解码邮件python自带的email模块是个很有意思的东西,它可以对邮件编码解码,用来处理邮件非常好用. 处理邮件是一个很细致的工作,尤其是解码邮件,因为它的格式变化太多了,下面先看看一个邮件的源文件 ...
- python自动发邮件附件_python自动发送带附件的邮件(163邮箱,亲测可用)
1.设置发送邮件邮箱的SMTP服务 https://www.360kuai.com/pc/927b9f8da3555bb70?cota=4&kuai_so=1&tj_url=xz&am ...
- python数据可视化散点图案例_Python数据可视化—散点图_python 数据可视化
Python数据可视化-散点图 PS: 翻了翻草稿箱, 发现居然存了一篇去年2月的文章...虽然naive,还是发出来吧... 本文记录了Python中的数据可视化--散点图scatter, 令x作为 ...
- python数据可视化的特点_python的数据分析到底是啥?python数据可视化怎么做?
python是个啥?它一个强大的编程语言.数据分析是个啥?它一目了然,就是将数据进行分析,看看能得出什么结论.那python的数据分析到底是啥?其实就是通过这个语言将数据分析做出来,更加便捷化,更加速 ...
- python数据科学课后答案_Python数据科学-技术详解与商业实践-第五讲作业
作者:Ben,著有<Python数据科学:技术详解与商业实践>.<用商业案例学R语言数据挖掘>.<胸有成竹-数据分析的SAS EG进阶>作者.2005年进入数据科学 ...
- python数据可视化是什么_Python数据可视化的四种简易方法
数据可视化是任何数据科学或机器学习项目的一个重要组成部分.人们常常会从探索数据分析(EDA)开始,来深入了解数据,并且创建可视化确实有助于让问题更清晰和更容易理解,尤其是对于那些较大的高维度数据集.在 ...
- python数据归一化处理方法_python测试数据怎么归一化
在python上数据归一化后怎样还原目测是autonorm.py中lin 17 normdataset=zeros(shape(dataset)) 这一句 shape(dataset)返回的是元组,但 ...
最新文章
- UML应用开发详解--视频
- 《C++ Primer Plus 6th》读书笔记 - 第8章 函数探幽
- [IDEA 配置MYSQL数据库连接]
- 做个全国一等奖的小车,其实不难(F题:智能送药小车方案分享)
- WPF 实现人脸检测
- json 语法_JSON的基本语法
- Js中数组Array的用法
- c++ 使用nacos_想自学Maven?推荐Maven极简高速入门及常规使用
- kettle优化抽取数据速度_基于kettle工具提高表输出写入速度(每秒万条记录)
- Redis源码分析系列十一:createClient后面内容
- 小米球Ngrok-使用方法
- 嘉兴 机器人仓库 菜鸟_今天,菜鸟上线中国最大机器人仓库
- .net 3des 解密
- Unity3D 放大缩小图片
- php 国家地区码,有没有一种简单的方法可以从PHP的国家/地区代码中获取语言代码 - php...
- uint与int区别
- 用纯css实现下拉菜单的几种方式
- 国家电子政务体系学习
- Android 之路34---Dialog
- 股票查询系统,模糊查询,判断数值,字典,列表,字符串的运用python
热门文章
- KMPBoyer-Moore
- 【源码】H5+JS混合实现《Just Do 8》app游戏源码分享
- nginx+redis 实现 jsp页面缓存,提升系统吞吐率
- 关于STM32库中 __IO 修饰符(volatile修饰符,反复无常的意思)
- 项目开发中对使用的第三方库统一进行管理__添加属性表/页
- 【最佳实践】【Blend】Triggers、Actions 和 Behaviors
- 轻飘飘的旧时光就这么溜走
- Linux 命令(76)—— kill 命令
- 结构型设计模式(2)—— 外观模式(Facade Pattern)
- Pytorch中的错误和bug