1. 程式人生 > >定時執行Python指令碼實現自動簽到

定時執行Python指令碼實現自動簽到

起初學Python最想做的就是實現自動簽到了,而且是全自動的,電腦關機也能執行簽到的那種,後來程式碼實現了但是偏偏驅動器出問題了,也就是程式執行第一步 不能開啟瀏覽器,後來我的pycharm的環境也出各種問題,我亂增改路徑導致我的python的pip指令都執行不了了,或許是以前亂刪了電腦的一些檔案吧,於是就這麼放了一段時間,直到今天十一放假了,我終於重灌了系統(很久之前就想重灌了),所有ide都重灌了一遍,環境也配了一遍,在美麗的小姐姐指導下還安了sql server ,簽到指令碼也可以正常運行了,特別開心的實現了我開學以來就一直想著的小願望,明天去長沙了我要好好玩。

自動簽到指令碼實現:

利用了 selenium這個強大的庫,主要用xpath定位,過程就是利用驅動器開啟網頁,點選登入,利用xpath定位到表單實現自動輸入賬號密碼,登入成功,再利用xpath實現點選簽到按鈕,實現簽到

1.導包

from bs4 import BeautifulSoup 
from selenium import webdriver 
import requests 
import time //後續延時載入需要用到

2.關於驅動器的安裝,第一步檢視瀏覽器版本,我只知道谷歌的,火狐瀏覽器也很好,但是我在重灌系統以後就沒用它了 ,很奇怪我的谷歌瀏覽器好像一直有問題,在檢視版本的時候一直顯示更新錯誤,好在沒有對我的操作造成什麼影響:

 執行驅動器的程式碼:

browser = webdriver.Chrome() //利用驅動器開啟網頁
browser.get('https://www.ctguqmx.com') //需要開啟網頁的網址

3.找到登入按鈕,點選開啟登入介面實現自動登入

browser.find_element_by_xpath('/html/body/div[1]/div/div[4]/span/a[1]').click()
time.sleep(1)
 
# 輸入賬號密碼 點選登入
browser.find_element_by_xpath('//*[@id="aw-login-user-name"]').send_keys('賬號')
browser.find_element_by_xpath('//*[@id="aw-login-user-password"]').send_keys('密碼')
browser.find_element_by_xpath('//*[@id="login_submit"]').click()
time.sleep(1)

 4.進入登入介面以後 點選簽到按鈕,完成簽到

browser.find_element_by_xpath('/html/body/div[1]/div/div[5]/a').click()
time.sleep(1)
browser.find_element_by_xpath('//*[@id="qd_button"]').click()
time.sleep(1)
 
browser.quit();

接下來就是自動的實現了,在搜尋行中輸入“任務計劃程式”

根據需要自己可設定程式執行時間 :

著重說一下執行指令碼這一塊:

【程式或指令碼】文字框中填的是Python編譯器的名稱,一般就是python.exe,

【起始於】文字框中填的是Python編譯器的目錄,一般python預設路徑為:

C:\Users\17871\AppData\Local\Programs\Python\Python37  這裡AppData是隱藏的資料夾,在我的電腦裡面設定一下顯示隱藏檔案就好了

【新增引數】文字框中填的是你的Python程式的完整路徑,也就是要執行的.py檔案的位置

這三部分連起來就是在Windows命令列下輸入“python C:\Users\qimingxing.py” 

不知道為什麼我設定了不管電腦使用者是否登入 都執行該指令碼卻沒有用,我只好再設定一個定時自動喚醒,再執行指令碼.,,,方法一樣,通過執行指令碼shutdown.exe來喚醒計算機。