学校每天都要通过学习通进行健康填报
每天填报内容大同小异吧
但是也不能不填
要不然导员就找你喝茶
我喝茶睡不着
所以。。。。。
selenium还是很香的,其实没什么技术含量,只是在重复造轮子而已
大概思路就是先实例化一个对象,然后通过自带的方法通过xpth等方法找到标签,进行写入或者点击操作,最适合我这种什么都不懂的小白操作啦,当然要想跑起来除了导入的包外还需要下一个谷歌驱动器,额edge也行,都行。。。
我这里用的是谷歌,下载地址放在这里
谷歌驱动:
http://chromedriver.storage.googleapis.com/index.html
版本映射关系:
https://blog.csdn.net/huilan_same/article/details/51896672
from selenium import webdriver from time import sleep from selenium.webdriver.chrome.options import Options chrome_options = Options() chrome_options.add_argument('--headless') # 无头浏览器 bro = webdriver.Chrome(executable_path=r'谷歌驱动的绝对路径',options=chrome_options) # 实例化对象 bro.get('http://passport2.chaoxing.com/login?fid=&newversion=true&refer=http%3A%2F%2Fi.chaoxing.com') # 学习通登录url username_tag = bro.find_element_by_id('phone') username_tag.send_keys('你的账号') password_tag = bro.find_element_by_id('pwd') password_tag.send_keys('你的密码') btn = bro.find_element_by_id('loginBtn') btn.click() bro.get('https://uc.chaoxing.com/mobileSet/homePage?fid=121890&customizecolor=0xFFFFFF&time=20210103085130342&enc=EE9D0B4C0E4393B0C64851D542A6E14F') # 健康填报url # sleep(5) aniu = bro.find_element_by_xpath('/html/body/div[3]/div/div/div[1]/div[2]/div[1]') aniu.click() morning_tag = bro.find_element_by_xpath('//*[@id="10"]/div[3]/input') morning_tag.send_keys('36.6') noon_tag = bro.find_element_by_xpath('//*[@id="11"]/div[3]/input') noon_tag.send_keys('36.7') night_tag = bro.find_element_by_xpath('//*[@id="12"]/div[3]/input') night_tag.send_keys('36.5') no_tag = bro.find_element_by_xpath('//*[@id="13"]/div[3]/input') no_tag.send_keys('无') b = bro.find_element_by_xpath('//*[@id="forms"]/div[2]/div[5]/div/div[2]/p') b.click() # sleep(5) bro.quit()
然后就到了让它每天执行一次的环节
通过跟同学沟通发现我的linux服务器并不能部署
所以决定把它直接放在自己的电脑上,每天开电脑的时候自动执行(再加一个无头更好用)
1.在py文件中把驱动改成绝对路径
2.python+py文件的绝对路径写入bat文件中
3.在任务管理中添加该任务(每天一次)
over!!!
特别鸣谢:殷大佬、邱大佬、罗大佬