国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Python + selenium + crontab實現每日定時自動打卡功能

瀏覽:69日期:2022-07-31 15:08:36

前言

近幾日迫于被輔導員三番五次的提醒每日一報打卡,就想著去寫個腳本掛在服務器上定時執行。經過我不懈的努力,最終選擇了seleniumseleniumselenium,因為簡單(

安裝selenium庫

$ sudo pip install selenium

安裝chromdriver

因為我有代理所以直接在官網下載的,那這里你可以選擇用淘寶鏡像源。

Python + selenium + crontab實現每日定時自動打卡功能

這里為了方便,我直接放命令了。Chromedriver版本我這里選擇的是80.0.3987.16(注意要和一會兒下載的Chrome版本一致)。

下載

$ wget https://npm.taobao.org/mirrors/chromedriver/80.0.3987.16/chromedriver_linux64.zip

解壓

$ unzip chromedriver_linux64.zip -d .

放到相應目錄并授予可執行權限

$ sudo cp chromedriver /usr/bin && sudo chmod +x /usr/bin/chromedriver

安裝Chrome安裝依賴

$ sudo apt-get install libxss1 libappindicator1 libindicator7

安裝Chrome

$ wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb$ sudo dpkg -i google-chrome*.deb$ sudo apt-get install -f

查看版本

$ google-chrome --version

測試調試

$ google-chrome --headless --remote-debugging-port=9222 https://chromium.org --disable-gpu

編寫腳本創建腳本并授予權限

$ touch dailyReport.py && touch dailyReport.log && sudo chmod +x dailyReport.py

內容

# encoding=utf8from selenium import webdriverfrom selenium.common.exceptions import NoSuchElementExceptionimport timeclass DailyReport(object): def __init__(self): self.chrome_options = webdriver.ChromeOptions() self.chrome_options.add_argument(’--headless’) self.chrome_options.add_argument(’--disable-gpu’) self.chrome_options.add_argument(’--no-sandbox’) # 這個配置很重要 self.client = None # self.client = webdriver.Chrome(chrome_options=self.chrome_options) self.index_url = ’https://xxxxx/xxxx/login’ self.report_url = ’https://xxxx/xxxx/report’ self.data = [ (’用戶名’, ’密碼’), (’xxxx’, ’xxxx’), (’xxxx’, ’xxxx’), (’xxxx’, ’xxxx’), (’xxxx’, ’xxxx’) ] def login(self, _username, _password): try: self.client = webdriver.Chrome(chrome_options=self.chrome_options) print(self.get_current_time() + ’ ’ + _username + u’開始進行打卡’.encode(’utf-8’)) self.client.get(self.index_url) username = self.client.find_element_by_name('username') password = self.client.find_element_by_name(’password’) username.send_keys(_username) password.send_keys(_password) login_button = self.client.find_element_by_xpath(’//*[@id='form1']/div[4]/button’) login_button.click() except NoSuchElementException: print(self.get_current_time(), u’登錄異常!’.encode(’utf-8’)) else: # time.sleep(2) print(self.get_current_time() + ’ ’ + u’登錄成功!’.encode(’utf-8’)) def post_data(self): try: self.client.get(self.report_url) submit_button = self.client.find_element_by_xpath(’//*[@id='p1_ctl00_btnSubmit']/span/span’) submit_button.click() ensure_button = self.client.find_element_by_xpath(’//*[@id='fineui_26']/span/span’) ensure_button.click() # print (client.page_source.encode(’utf-8’)) except NoSuchElementException: print(self.get_current_time(), u’ 提交表單異常! 打卡失敗!’.encode(’utf-8’)) else: # time.sleep(2) print(self.get_current_time() + ’ ’ + u’打卡成功!n’.encode(’utf-8’)) finally: time.sleep(5) self.client.quit() print(u’瀏覽器退出...n--------------n’.encode(’utf-8’)) def run(self): for msg in self.data: self.login(msg[0], msg[1]) self.post_data() print(’Python script completed at ’ + self.get_current_time() + ’n--------------n’) @staticmethod def get_current_time(): return time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())if __name__ == ’__main__’: obj = DailyReport() obj.run()

腳本內容需要根據不同網站做對應的修改。

腳本定時執行

這里我們利用LinuxLinuxLinux的內置命令crontabcrontabcrontab,關于crontabcrontabcrontab的用法請自行百度ororor谷歌。

$ crontab -e

如果是首次使用,應該會讓你選擇編輯器,我選擇的vimvimvim,然后在最后一行加入一行

0 0 * * * python ~/dailyReport.py >> ~/dailyReport.log

這樣就可以做到每天00:0000:0000:00自動執行腳本了。

Chrome在服務器端運行參考博文:https://www.jb51.net/article/183899.htm

到此這篇關于Python + selenium + crontab實現每日定時自動打卡的文章就介紹到這了,更多相關python 定時自動打卡內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 久久一本一区二区三区 | 成人午夜性a一级毛片美女 成人午夜亚洲影视在线观看 | 欧美日韩一日韩一线不卡 | 欧美精品成人一区二区视频一 | 好叼操这里只有精品 | 亚洲在线高清 | 一区二区三区四区在线播放 | 国产精品美女久久福利网站 | 4四虎44虎www在线影院麻豆 | 日本国产在线视频 | 国产精品一区二区四区 | 欧美三级一区二区三区 | 国产成人一区二区视频在线观看 | 国产亚洲一区二区三区在线 | 亚洲免费天堂 | 99精品欧美一区二区三区 | 日本免费人成黄页在线观看视频 | 91aaa免费免费国产在线观看 | 久久精品国产午夜伦班片 | 欧美精品久久天天躁 | 狠狠色综合久久丁香婷婷 | 色拍拍噜噜噜aⅴ在线观看 色青青草原桃花久久综合 色婷婷91 | 久久久久久久久久久大尺度免费视频 | 一本久道综合久久精品 | 国产不卡毛片 | 在线观看欧洲成人免费视频 | 国产成人久视频免费 | 在线免费看a | 久久亚洲私人国产精品va | 亚洲毛片一级巨乳 | 久久semm亚洲国产 | 99av视频| 日韩久久一区二区三区 | 国产日产欧产精品精品推荐在线 | 爱视频福利广场 | 久久综合中文字幕一区二区 | 亚洲人成网站在线观看播放 | 中文字幕亚洲综合久久男男 | 久久色视频在线观看 | 一级做a爰性色毛片免费 | 久久精品人人爽人人爽快 |