0.每日健康打卡有点烦

1.所用方法:selenium;需要下载响应浏览器的webdriver

2.注意事项,我感觉唯一要注意的就是页面跳转以后应该怎么操作了(那个时候困扰了我好几天)

3.相应代码:

from selenium import webdriver
from time import sleep bro = webdriver.Edge(executable_path='E:/love/edgedriver_win64/msedgedriver')//自己webdriver.exe文件的地址
bro.maximize_window()//窗口最大化,看着好看
bro.get('http://my.hhu.edu.cn/index.portal')//进这个网站,就是河海大学的门户网站
name_text = bro.find_element_by_xpath('//*[@id="username"]')
code_text = bro.find_element_by_xpath('//*[@id="password"]')
btn = bro.find_element_by_xpath('//*[@id="changeBack"]/tbody/tr/td[2]/table[1]/tbody/tr[2]/td/div/input[1]')
//上面是找到响应的地方填写东西,用户名,密码还有登录button
name_text.send_keys('********')
code_text.send_keys('********')//填信息
btn.click()点击
sleep(0.3)//让浏览器缓一缓,可能它跟不上操作
bro.execute_script('window.scrollTo(0,document.body.scrollHeight)') //将页面向下翻,找到健康打卡的入口
jiangkangshangbao_text = bro.find_element_by_xpath('//*[@id="pf4301"]/div/div[2]/table/tbody/tr[11]/td[2]/a/img')
jiangkangshangbao_text.click()
//点击这个入口
sleep(0.5)
n = bro.window_handles
bro.switch_to.window (n[1]) //将操作的页面移到第二个页面,也就是点击健康打卡后会新弹出一个页面
bro.find_element_by_xpath('//section/section/div/a').click()
sleep(0.5)
//点击本科生健康打卡
bro.find_element_by_xpath('//*[@id="saveBtn"]').click()
sleep(0.5)
//再点击打卡即可
bro.quit()
//退出

4.提高:这也可以使用无头浏览器,就是你看不到浏览器的页面,但是它依然会执行你的代码,但是我感觉没有我看着它自动运行帅。如果想要点击一个py文件就可以直接运行的话可以改变打开这个py文件的运行方式,可以直接使用自己的python.exe来打开自己这个代码文件,然后就会自动运行。

5.遗留问题:我曾想如果可以设置一个时间然后每天跑一遍。但是学了网上的方法后依旧是以失败告终。fuck!希望大牛给我指条可以每天定时运行的明路!

基于selenium实现河海大学自动健康打卡的更多相关文章

  1. 每日自动健康打卡(Python+腾讯云服务器)

    每日自动健康打卡(Python+腾讯云服务器) 1.配置需要 python3.7,Chrome或者Edeg浏览器,Chrome驱动或者Edge驱动 #需要配置selenium库,baidu-aip库, ...

  2. 基于selenium的pyse自动化测试框架

    WebUI automation testing framework based on Selenium 介绍: pyse基于selenium(webdriver)进行了简单的二次封装,比seleni ...

  3. TestNG测试框架在基于Selenium进行的web自动化测试中的应用

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ TestNG+Selenium+Ant TestNG这个测试框架可以很好的和基于Selenium的 ...

  4. 《零成本实现Web自动化测试--基于Selenium》 第五章 Selenium-RC

    一. 简介 Selenium-RC可以适应更复杂的自动化测试需求,而不仅仅是简单的浏览器操作和线性执行.Selenium-RC能够充分利用编程语言来构建更复杂的自动化测试案例,例如读写文件.查询数据库 ...

  5. 转载 基于Selenium WebDriver的Web应用自动化测试

    转载原地址:  https://www.ibm.com/developerworks/cn/web/1306_chenlei_webdriver/ 对于 Web 应用,软件测试人员在日常的测试工作中, ...

  6. 基于selenium+phantomJS的动态网站全站爬取

    由于需要在公司的内网进行神经网络建模试验(https://www.cnblogs.com/NosenLiu/articles/9463886.html),为了更方便的在内网环境下快速的查阅资料,构建深 ...

  7. 基于Selenium的web自动化框架

    转自 : https://www.cnblogs.com/AlwinXu/p/5836709.html 1 什么是selenium Selenium 是一个基于浏览器的自动化工具,它提供了一种跨平台. ...

  8. 基于Selenium的Web自动化框架增强篇

    在写完上一篇“基于Selenium的Web自动化框架”(http://www.cnblogs.com/AlwinXu/p/5836709.html)之后一直没有时间重新审视该框架,正好趁着给同事分享的 ...

  9. 【转】基于Selenium的web自动化框架(python)

    1 什么是selenium Selenium 是一个基于浏览器的自动化工具,它提供了一种跨平台.跨浏览器的端到端的web自动化解决方案.Selenium主要包括三部分:Selenium IDE.Sel ...

随机推荐

  1. 一张图让你看懂 iPhone 各种分辨率问题! #DF

    话不多说,直接看图! Source: paintcodeapp.com

  2. Solution -「ARC 058C」「AT 1975」Iroha and Haiku

    \(\mathcal{Description}\)   Link.   称一个正整数序列为"俳(pái)句",当且仅当序列中存在连续一段和为 \(x\),紧接着连续一段和为 \(y ...

  3. Java架构师必备技能:docker使用大全

    前言   java工程师成长为架构师是一个艰难且耗费心力的过程,不仅仅需要熟悉java体系内相关的技术,同时要掌握许多运维相关的操作技能,随着k8s逐渐成为微服务持续集成开发难以越过的基础设施之后,d ...

  4. CentOS 7.6 部署 GlusterFS 分布式存储系统

    文章目录 GlusterFS简介 环境介绍 开始GlusterFS部署 配置hosts解析 配置GlusterFS 创建文件系统 安装GlusterFS 启动GlusterFS 将节点加入到主机池 创 ...

  5. php base64格式的图片字符串和图片文件相互转换的代码

    在移动端上传图片的时候通常会将图片转换成base64格式的字符串提交,所以此时需要使用服务器端的程序进行转换成二进制的数据.如下PHP代码实现了图片文件和base64格式的图片字符串相互转换的方法,同 ...

  6. 图解python | 安装与环境设置

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/56 本文地址:http://www.showmeai.tech/article-det ...

  7. SQL Server 索引结构

    索引是数据库的基础,只有先搞明白索引的结构,才能搞明白索引运行的逻辑 本文通过 索引表.数据页.执行计划.IO统计.B+Tree 来尽可能的介绍 SQL 语句中 WHERE 部分,和 SELECT 部 ...

  8. 图解AI数学基础 | 概率与统计

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/83 本文地址:http://www.showmeai.tech/article-det ...

  9. 记录一次dns劫持及其解决办法

    发现问题 偶然发现家里的私人云盘不能用了,最开始以为是云盘出现了问题,各种修复重启后发现云盘并没有问题.然后又发现电脑无法使用浏览器访问网页(或者加载异常缓慢),但是各种软件又可以正常使用,win+R ...

  10. nginx 配置ssl证书

    1.443端口配置 server { listen 443 ssl; server_name www.test.com; ssl_certificate /usr/local/nginx/cert/t ...