Skip to content

All-Sunday/Auto-punch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 

Repository files navigation

python+selenium实现的web端自动打卡

说明

本打卡脚本适用于xx大学健康打卡,其他web端打卡也可借鉴学习。(自己用的,从2月分稳定运行至今)
仅供学习交流使用,请勿依赖。开发者对使用本脚本造成的问题不负任何责任,不对脚本执行效果做出任何担保,原则上不提供任何形式的技术支持。
为防止疫情再次扩散,我们一定要如实汇报自己的个人情况,不隐瞒真实状况。
ps:喜欢请Star此项目🤞🤞🤞。 image

简明教程

环境

python 3.8.5
使用到的一些包,需一步步install

代码

打卡代码

daka.py适用于windows,只实现打卡功能
daka_linux.py适用于linux,实现打卡 + 邮件发送打卡结果(金山词霸每日一句 + 毒鸡汤🤣)
两个文件打卡部分几乎一致,只有配置差别

主要介绍daka_linux文件,以下是主要方法

  • webdriver配置
  • get_jsciba():获取金山词霸每日一句
  • get_djt(): 获取毒鸡汤
  • dk(): 打卡逻辑
  • send_mail(): 邮件发送逻辑

整体逻辑:

  • 循环用户,调用dk(),返回的打卡结果True or False存为res列表
  • 调用get_jsciba()、get_djt(),组成邮件正文
  • 循环res,打卡成功的发送邮件

简单介绍下dk()部分内容 使用的selenium自动化,其他技术请自行google
使用的find_elements_by_xpath获取标签元素
其他api可以参考https://www.jianshu.com/p/6c82c965c014 image

//*[@id="mt_5"]/div[2]/div[3]/input      # copy结果
driver.find_element_by_xpath('//*[@id="mt_5"]/div[2]/div[3]/input')

自动化

在Windows和Linux设置定时任务,前者Bat,后者Shell,前者任务计划程序,后者Contrab linux 定时任务

01 5,7 * * * /usr/local/bin/python3 daka_linuxn.py >> daka_linux.log 2>&1

其他

linux要注意chrome、chromedriver进程关闭,虽代码里写了关闭逻辑,保险起见,可以设置定时任务杀死这两个进程
ps:邮箱授权码可自行google,qq、163等均可

About

python+selenium实现的web端自动打卡 + 每日邮件发送 + 金山词霸 每日一句 + 毒鸡汤

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages