python實現自動打卡的示例代碼
自己也百度了一下,然后寫的,分為了三個部分,見三段代碼
代碼:主程序代碼
import timefrom selenium import webdriverfrom private_info import *import send_maildef signin_and_email(): #谷歌瀏覽器驅動的位置 driver=webdriver.Chrome('D:/...../chromedriver') driver.get(’http://****.edu.cn/login.portal’) #通過id找到填寫用戶名及密碼的地方 并填入 driver.find_element_by_id('username').send_keys(User.uid) driver.find_element_by_id('password').send_keys(User.pwd) #點擊登錄 driver.find_element_by_name('login').click() #通過下面第二行代碼定位當前的頁面,下面第一行代碼不可以省去(初學selenium,所以我一直定位到當前頁面再去定位的)#下面這一段根據自己的需要來寫 time.sleep(1) middle_window=driver.current_window_handle #定位當前頁面后仍然用driver driver.get('http://form.***.edu.cn/pdc/form/list') time.sleep(1) middle_window=driver.current_window_handle #定位當前頁面后仍然用driver driver.get('http://form.***.edu.cn/pdc/formDesignApi/S/gUTwwojq') time.sleep(1) middle_window=driver.current_window_handle #點擊提交 driver.find_element_by_id('saveBtn').click() #提交后給用戶發送郵件提醒 send_mail.mail()
’’’打卡成功后為用戶發送郵件代碼’’’import smtplibfrom email.mime.text import MIMETextfrom private_info import *def mail(): #設置郵件內容 用的是之前返回的提示信息 #注意以下內容的格式 #可以設置多個用戶 此處我只設置了一個用戶 mail_host='smtp.163.com' mail_user=User.email mail_pass=User.email_pwd sender=User.email receivers=[User.receiver] content = ’打卡成功!’ title = ’今日健康打卡已成功’ # 郵件主題 message = MIMEText(content, ’plain’, ’utf-8’) # 內容, 格式, 編碼 message[’From’] = '{}'.format(sender) message[’To’] = ','.join(receivers) message[’Subject’] = title try: smtpObj = smtplib.SMTP_SSL(mail_host, 465) # 啟用SSL發信, 端口一般是465 smtpObj.login(mail_user, mail_pass) # 登錄驗證 smtpObj.sendmail(sender, receivers, message.as_string()) # 發送 except smtplib.SMTPException as e:
#個人信息class User: uid='........'#用戶賬號 pwd='........'#用戶密碼 email='.........'#發件郵箱 email_pwd='........'#這里的密碼是授權碼 receiver=’........’#收件郵箱 def __init__(self,uid,pwd,email,email_pwd): #私有self.uid=uid self.pwd=pwd self.email=email self.email_pwd=email_pwd self.receiver=receiver
以上就是python實現自動打卡的示例代碼的詳細內容,更多關于python 自動打卡的資料請關注好吧啦網其它相關文章!
相關文章: