python 实现网易邮箱邮件阅读和删除的辅助小脚本


Posted in Python onMarch 01, 2021

简介:

在Windows下的网易邮箱大师客户端中,阅读邮件时,可以使用快捷键Delete删除邮件,然后自动跳到下一封,如果再按一次Delete键,再跳到下一封。为了迅速的阅读邮件,同时删除没有必要的邮件,特地写了如下脚本,自用同时放出来共享。

python 实现网易邮箱邮件阅读和删除的辅助小脚本

问题:

1. 如上图,我积累太多未读邮件,原因是每天邮件太多,根本看不完,数量马上到上限了;

2. 我想看到每封邮件;

3. 邮件有时内容太过鸡肋,属于知晓型即可,看完即可删除;

4. 大多数看完就要删除,一个个删除太麻烦;

一句话,需要自动删除我看完之后觉得没有用处的邮件。

一个解决方案:

见如下代码

import win32api
import time
 
 
def fast_email_reading_and_delete(vk_code: int) -> None:
    """
    Virtual Key Code reference: https://docs.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes
    """
    print("Running, please switch to the software you are using within 3 seconds!")
    time.sleep(3) # use this 3 seconds to switch to the software you use, for example Netease email client
    count = 0
    while True:
        win32api.keybd_event(int(vk_code), 0, 0, 0)
         
        count += 1
        if count % 30 == 0: # refresh every 30 seconds to get more email from Netease email server
            win32api.keybd_event(int(0x71), 0, 0, 0)   # 0x71 is F2 refresh, int is 113
        time.sleep(1) # mail reading time
         
        # press space key or right arrow would halt the delete process. 0x20 spacekey 0x27 right arrow key
        if win32api.GetAsyncKeyState(int(0x20)) or win32api.GetAsyncKeyState(int(0x27)): 
            while True:
                time.sleep(0.5)
                if win32api.GetAsyncKeyState(int(0x20)) or win32api.GetAsyncKeyState(int(0x27)):
                    break
 
if __name__ == '__main__':
    fast_email_reading_and_delete(0x2E) # 0x2E is DEL key, equivalent int is 46

将来我如果有机会自行开发邮件客户端,就将自动展现邮件内容(一封接着另一封)、自动删除(或者归档)邮件,作为原始功能提供给用户。

理论上讲,上述脚本适用于任何有DEL快捷键功能的软件,注意不要把自己的东西搞砸了,自动删除时间是1秒。

好了,以上代码调用了Windows的api,所以只能在Windows下运行,Linux下面应该有类似的工具,欢迎留言交流!

以上就是python 实现网易邮箱邮件阅读和删除辅助小脚本的详细内容,更多关于python 网易邮箱脚本的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
小结Python用fork来创建子进程注意事项
Jul 03 Python
Python random模块常用方法
Nov 03 Python
Python脚本实时处理log文件的方法
Nov 21 Python
python去掉空白行的多种实现代码
Mar 19 Python
基于PyQt4和PySide实现输入对话框效果
Feb 27 Python
通过PHP与Python代码对比的语法差异详解
Jul 10 Python
python实现低通滤波器代码
Feb 26 Python
Django框架配置mysql数据库实现过程
Apr 22 Python
python 等差数列末项计算方式
May 03 Python
python使用matplotlib:subplot绘制多个子图的示例
Sep 24 Python
Python常用base64 md5 aes des crc32加密解密方法汇总
Nov 06 Python
python 基于selenium实现鼠标拖拽功能
Dec 24 Python
详解Django中的FBV和CBV对比分析
Mar 01 #Python
Python3压缩和解压缩实现代码
Mar 01 #Python
python re模块常见用法例举
Mar 01 #Python
Python实现简单的2048小游戏
Mar 01 #Python
Python使用Turtle模块绘制国旗的方法示例
Feb 28 #Python
Python页面加载的等待方式总结
Feb 28 #Python
Python Selenium操作Cookie的实例方法
Feb 28 #Python
You might like
Cakephp 执行主要流程
2010/03/24 PHP
3个PHP多维数组转为一维数组的方法实例
2014/03/13 PHP
php时间函数用法分析
2016/05/28 PHP
PHP数组式访问接口ArrayAccess用法分析
2017/12/28 PHP
yii2中关于加密解密的那些事儿
2018/06/12 PHP
雄兵连第三季海报曝光,艾妮熙德成主角,蔷薇新造型
2021/03/09 国漫
IE和firefox浏览器的event事件兼容性汇总
2009/12/06 Javascript
javascript中怎么做对象的类型判断
2013/11/11 Javascript
JQuery实现带排序功能的权限选择实例
2015/05/18 Javascript
javascript截图 jQuery插件imgAreaSelect使用详解
2016/05/04 Javascript
深入理解JavaScript中的for循环
2017/02/07 Javascript
js获取html页面代码中图片地址的实现代码
2018/03/05 Javascript
解决vue-router在同一个路由下切换,取不到变化的路由参数问题
2018/09/01 Javascript
js中的闭包实例展示
2018/11/01 Javascript
vue 搭建后台系统模块化开发详解
2019/05/01 Javascript
利用es6 new.target来对模拟抽象类的方法
2019/05/10 Javascript
JS开发 富文本编辑器TinyMCE详解
2019/07/19 Javascript
[04:50]DOTA2亚洲邀请赛小组赛第四日 TOP10精彩集锦
2015/02/02 DOTA
[02:04]2016国际邀请赛中国区预选赛VG.R晋级之路
2016/07/01 DOTA
[51:44]2018DOTA2亚洲邀请赛 4.3 突围赛 Optic vs iG 第二场
2018/04/04 DOTA
[01:06] DOTA2英雄背景故事第三期之秩序法则光之守卫
2020/07/07 DOTA
Python可变参数函数用法实例
2015/07/07 Python
Python基于生成器迭代实现的八皇后问题示例
2018/05/23 Python
python中数据库like模糊查询方式
2020/03/02 Python
Python-openpyxl表格读取写入的案例详解
2020/11/02 Python
10 套华丽的CSS3 按钮小结
2012/10/03 HTML / CSS
Skyscanner澳大利亚:全球领先的旅游搜索网站
2018/03/24 全球购物
一些高难度的SQL面试题
2016/11/29 面试题
小区门卫值班制度
2014/01/24 职场文书
交通文明倡议书
2014/05/16 职场文书
助理政工师申报材料
2014/06/03 职场文书
专题组织生活会方案
2014/06/15 职场文书
自我查摆剖析材料
2014/10/11 职场文书
大一新生检讨书
2014/10/29 职场文书
辩护意见书
2015/06/04 职场文书
2015双创工作总结
2015/07/24 职场文书