基於selenium實現河海大學自動健康打卡

0.每日健康打卡有點煩python

1.所用方法:selenium;須要下載響應瀏覽器的webdriverweb

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來打開本身這個代碼文件,而後就會自動運行。ui

5.遺留問題:我曾想若是能夠設置一個時間而後天天跑一遍。可是學了網上的方法後依舊是以失敗了結。fuck!但願大牛給我指條能夠天天定時運行的明路!spa

相關文章
相關標籤/搜索