用python实现自动签到脚本
生活随笔
收集整理的這篇文章主要介紹了
用python实现自动签到脚本
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 閑來無事,于是乎寫個腳本研究一下自動打卡。
2. 簽到原理:
模擬用戶進行自行輸入,然后登錄,然后簽到,在研究過程中使用到了python的selenium包,本人在win10環境中進行測試使用,可以實現基本的自動打卡。
3. 需要的環境selenium
pip install selenium4. 安裝模擬的插件
需要從網上下載模擬點擊瀏覽器的google瀏覽器插件chromedriver.exe,下載鏈接:https://npm.taobao.org/mirrors/chromedriver/,需要找到與自己瀏覽器適配的插件。(如何查看自己Chrome適配的插件版本?如圖:)
5. 下載好后將插件放到Chrome.exe所在的文件夾下,如圖:
6. 開始工作結束,接下來進入代碼正題:
import time import datetime import random from selenium import webdriverdef morning_clockin():# 找到插件的路徑,使用它驅動操作browser = webdriver.Chrome('C:\Program Files\Google\Chrome\Application\chromedriver.exe')# 選擇需要打卡的網址,填入你的簽到網頁browser.get('https://www.baudu.login')# 找到郵件和密碼輸入框的xpath,并在對應的位置送入賬號密碼browser.find_element_by_xpath('//*[@id="email"]').send_keys("724183***@qq.com")browser.find_element_by_xpath('//*[@id="passwd"]').send_keys("zhan******")# 找到登錄按鈕的xpath,模擬點擊browser.find_element_by_xpath('//*[@id="login"]').click()time.sleep(2)# 找到簽到按鈕的xpath,模擬簽到browser.find_element_by_xpath('/html/body/div[3]/div[7]/div/button').click()if __name__ == '__main__':# 獲取當天的星期,周六日不打卡today = datetime.datetime.now().weekday() + 1if (today % 7 == 0) or (today % 7 == 6):print("今天是本周的第 {} 天,無需打卡!".format(datetime.datetime.now().weekday() + 1))# 工作日打卡else:# 早上打卡---設置0-300秒之間隨機數打卡print(datetime.datetime.now())random_time = random.randint(0, 60)time.sleep(random_time)# 進行打卡morning_clockin()print(datetime.datetime.now())7. 完工!
如果有驗證碼,可以使用帶驗證碼的百度插件api進行調用,我是純內部系統無驗證碼,沒研究驗證碼部分。最后剩下的就是寫定時任務了,參考網上博客即可!
附帶一篇寫的很詳細的Selenium WebDriver教程!傳送門
8. 更新,創建定時任務運行腳本
傳送門:https://blog.csdn.net/l8947943/article/details/119898781
總結
以上是生活随笔為你收集整理的用python实现自动签到脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python实现app自动签到器_pyt
- 下一篇: 2.#技术|Python实现钉钉课程自动