python之網頁自動打卡
阿新 • • 發佈:2019-02-07
想要用python實現自動打卡你需要依靠以下兩個第三方庫
1、selenium
2、apscheduler
說明一下,我這裡預設你已經安裝好了python
那麼首先你要安裝selenium,在cmd.exe中執行pip install selenium。
注意selenium需要瀏覽器驅動支援,下載你瀏覽器對應版本的驅動,配置好環境變數。
詳細的可以到這裡看一下http://blog.csdn.net/lee1169639/article/details/77365988
接下來是安裝apscheduler,這個庫有很多依賴,所以你通過下載.whl檔案或下載原始碼的方式安裝可能會安裝失敗,
最好直接用pip install apscheduler安裝,這種方式會自動安裝依賴。
接下來就是程式碼部分,其實很簡單,通過selenium抓取頁面上的輸入、button等,然後再用apscheduler做個定時任務即可
我這裡只做一個定時到百度頁面搜尋"python"這麼一個任務
我相信我做到這樣你們應該就可以繼續完成了,
如果我那裡寫的有問題歡迎大家指出來,#!/usr/bin/python # -*- coding: UTF-8 -*- import time from selenium import webdriver from selenium.webdriver.common.keys import Keys from apscheduler.schedulers.blocking import BlockingScheduler #使用者名稱、密碼 py="python" #打卡時間 c_minute="38" c_hour="8,18" c_week="mon-fri" def work(): try: #開啟瀏覽器,進入百度搜索 browser = webdriver.Chrome() browser.get('http://www.baidu.com') #輸入python elements = browser.find_elements_by_id('kw') elements.clear() time.sleep(2) elements.send_keys(py + Keys.ENTER) #退出瀏覽器 #browser.quit() print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())+": Clock Success!") except: print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())+": Clock Filed!") if __name__ == '__main__': #新增任務 scheduler = BlockingScheduler() #設定定時任務時間 scheduler.add_job(work,'cron', minute=c_minute,hour=c_hour,day_of_week=c_week) print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())+": Add Task Work!") try: scheduler.start() except (KeyboardInterrupt, SystemExit): scheduler.shutdown()
如果誰有哪裡看不懂也可以留言問我。
目前我也在用這種方式打卡