ECNU自动查成绩+邮件提醒
项目地址 https://github.com/woriazzc/AutoGetGrade
AutoGetGrade
通过python访问ECNU公共数据库,自动化查成绩,或定时查成绩并在有新成绩时发送邮件通知。
安装依赖
python 3.6及以上。
需要依赖库:pillow,pytesseract,PyExecJS,lxml,requests,getpass,bs4
使用方法
-
在 user_login.py 中的 Login() 函数中填入 username 和 password。
-
在 send_gmail 中填入mail_host, mail_sender, mail_license, mail_receiver。
-
在 send_gmail 中的 send_gmail() 函数中的 mm[“From”]=“” 中填入 “your nickname”。
-
在cmd中移动到当前目录,运行 python main.py
扩展功能
如果有服务器的话,可以加个定时任务,定时执行main.py。
可增加功能
通过传参指定用户名,密码,邮箱。
部署到网页上,用户在网页端输入用户名,密码,邮箱,服务端为其增加定时任务。
以上产生安全性问题。
用SMTP+gmail发邮件
Win10亲测可行
smtp.gmail.com 被墙,换成ip访问:173.194.193.108
增加代码
1 | stp.ehlo() # 向邮箱发送SMTP 'ehlo' 命令 |
在gmail设置中打开IMAP访问权限。SMTP用账号密码登录。
允许不安全应用访问权限 https://myaccount.google.com/lesssecureapps
允许任何设备登录 https://accounts.google.com/DisplayUnlockCaptcha
MIME协议Content-Disposition首部定义文件名
crontab
1 | 0,30 * * * * python3 /py-messege/main.py |
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment