python+selenium 简易地疫情信息自动打卡签到功能的实现代码


Posted in Python onAugust 22, 2020

由于学校要求我们每天都要在官网打卡签到疫情信息,多多少少得花个1分钟操作,程序员的尊严告诉我们坚决不能手动打卡。正巧最近学了selenium,于是画了个5分钟写了个自动打卡签到地小程序。

测试环境:python3.7 , selenium,chrome浏览器

seleium和chromedriver的配置在这里就不讲了,这里放个连接

首先找到学校信息门户的登录页:

http://my.hhu.edu.cn/login.portal

python+selenium 简易地疫情信息自动打卡签到功能的实现代码

#导入selenium中的webdriver
from selenium import webdriver
import time
url = 'http://my.hhu.edu.cn/login.portal' #信息门户的登陆页面
driver = webdriver.Chrome() # 初始化一个Chrome的驱动
driver.get(url) # 让自动化模块控制的Chrome浏览器跳转到信息门户登陆页面

这时候就该模拟登录了,首先找到用户名的input框。按ctrl+shift+c,打开开发者工具,点击用户名右边的input框,即可在右边的开发者工具中找到input框对应的代码。

python+selenium 简易地疫情信息自动打卡签到功能的实现代码
python+selenium 简易地疫情信息自动打卡签到功能的实现代码

右击该模块,点击copy->copy Xpath 。(Xpath是用来定位该input控件位置的)

root = '' #赋值自己的用户名
password = '' # 赋值自己的密码
driver.find_element_by_xpath('//*[@id="username"]').send_keys(root) #将xpath赋值在前面的括号中,通过send_keys方法给input赋值

#类似的,赋值密码框的xpath,赋值密码
driver.find_element_by_xpath('//*[@id="password"]').send_keys(password)

账号密码输完了,就该点击登陆了。按ctrl+shift+c,点击登录按钮,在右边的开发者工具对应的代码块右键copy->copy xpath,获得button的xpath。

driver.find_element_by_xpath('//*[@id="changeBack"]/tbody/tr/td[2]/table[1]/tbody/tr[2]/td/div/input[1]').click()
#通过click方法点击登录框,跳转到登陆后的页面

python+selenium 简易地疫情信息自动打卡签到功能的实现代码

在登陆后的页面中,找到了健康上报的功能框。点击该功能框,发现页面跳转到了签到页面:

python+selenium 简易地疫情信息自动打卡签到功能的实现代码

复制该页面的网址,让程序在登陆后跳转到该页面:

form = 'http://form.hhu.edu.cn/pdc/form/list'
driver.get(form)

让程序点击“本科生健康打卡:

driver.find_element_by_xpath('/html/body/div[1]/div[4]/div/section/section/div/a/div[2]').click()

会跳转到以下的页面

python+selenium 简易地疫情信息自动打卡签到功能的实现代码

点击提交,即完成签到

driver.find_element_by_xpath('//*[@id="saveBtn"]').click()

完整的程序:

from selenium import webdriver
import time
root = ''
password = ''
url = 'http://my.hhu.edu.cn/login.portal'
driver = webdriver.Chrome()
driver.get(url)
driver.find_element_by_xpath('//*[@id="username"]').send_keys(root)
driver.find_element_by_xpath('//*[@id="password"]').send_keys(password)
driver.find_element_by_xpath('//*[@id="changeBack"]/tbody/tr/td[2]/table[1]/tbody/tr[2]/td/div/input[1]').click()
form = 'http://form.hhu.edu.cn/pdc/form/list'
driver.get(form)
driver.find_element_by_xpath('/html/body/div[1]/div[4]/div/section/section/div/a/div[2]').click()
driver.find_element_by_xpath('//*[@id="saveBtn"]').click()

总结

到此这篇关于python+selenium 简易地疫情信息自动打卡签到功能的实现代码的文章就介绍到这了,更多相关python selenium自动打卡签到内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python 随机生成中文验证码的实例代码
Mar 20 Python
python改变日志(logging)存放位置的示例
Mar 27 Python
python+matplotlib演示电偶极子实例代码
Jan 12 Python
Python分支结构(switch)操作简介
Jan 17 Python
Python网络编程之TCP套接字简单用法示例
Apr 09 Python
Python基于百度AI的文字识别的示例
Apr 21 Python
利用Python求阴影部分的面积实例代码
Dec 05 Python
简单了解python变量的作用域
Jul 30 Python
python验证码图片处理(二值化)
Nov 01 Python
django 简单实现登录验证给你
Nov 06 Python
python使用itchat模块给心爱的人每天发天气预报
Nov 25 Python
python 经纬度求两点距离、三点面积操作
Jun 03 Python
python进度条显示之tqmd模块
Aug 22 #Python
python 常见的排序算法实现汇总
Aug 21 #Python
Python制作数据预测集成工具(值得收藏)
Aug 21 #Python
简述 Python 的类和对象
Aug 21 #Python
DRF框架API版本管理实现方法解析
Aug 21 #Python
Django rest framework分页接口实现原理解析
Aug 21 #Python
Python -m参数原理及使用方法解析
Aug 21 #Python
You might like
php 静态化实现代码
2009/03/20 PHP
浅析php fwrite写入txt文件的时候用 \r\n不能换行的问题
2013/08/06 PHP
PHP实现AES256加密算法实例
2014/09/22 PHP
如何使用微信公众平台开发模式实现多客服
2016/01/06 PHP
JavaScript中String和StringBuffer的速度之争
2010/04/01 Javascript
JavaScript调用堆栈及setTimeout使用方法深入剖析
2013/02/16 Javascript
jquery使用ul模拟select实现表单美化的方法
2015/08/18 Javascript
小巧强大的jquery layer弹窗弹层插件
2015/12/06 Javascript
15个值得开发人员关注的jQuery开发技巧和心得总结【经典收藏】
2016/05/25 Javascript
JavaScript第一篇之实现按钮全选、功能
2016/08/21 Javascript
js HTML5多图片上传及预览实例解析(不含前端的文件分割)
2016/08/26 Javascript
jQuery快速实现商品数量加减的方法
2017/02/06 Javascript
Vue.js 2.0窥探之Virtual DOM到底是什么?
2017/02/10 Javascript
JavaScript中splice与slice的区别
2017/05/09 Javascript
学习使用ExpressJS 4.0中的新Router的用法
2018/11/06 Javascript
JavaScrip数组去重操作实例小结
2019/06/20 Javascript
在antd Table中插入可编辑的单元格实例
2020/10/28 Javascript
Python下的twisted框架入门指引
2015/04/15 Python
Python selenium 三种等待方式解读
2016/09/15 Python
python with提前退出遇到的坑与解决方案
2018/01/05 Python
Python实现PS滤镜Fish lens图像扭曲效果示例
2018/01/29 Python
Python函数参数匹配模型通用规则keyword-only参数详解
2019/06/10 Python
Stefania Mode英国:奢华设计师和时尚服装
2017/10/23 全球购物
巴西独家产品和现场演示购物网站:Shoptime
2019/07/11 全球购物
澳洲Chemist Direct药房中文网:澳洲大型线上直邮药房
2019/11/04 全球购物
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
高级编程求职信模板
2014/02/16 职场文书
艺术学院毕业生自我评价
2014/03/02 职场文书
《假如》教学反思
2014/04/17 职场文书
机械电子工程专业自荐书
2014/06/10 职场文书
学校安全生产月活动总结
2014/07/05 职场文书
网络技术专业求职信
2014/07/13 职场文书
会计工作总结范文2014
2014/12/23 职场文书
公司会议开幕词
2015/01/29 职场文书
爱心捐赠活动简讯
2015/07/20 职场文书
医疗纠纷调解协议书
2015/08/06 职场文书