当前位置 : 主页 > 编程语言 > python >

python实现自动打卡的示例代码

来源:互联网 收集:自由互联 发布时间:2021-04-02
自己也百度了一下,然后写的,分为了三个部分,见三段代码 代码:主程序代码 importtimefromseleniumimportwebdriverfrom private_info import *import send_maildef signin_and_email(): #谷歌浏览器驱动的位置

自己也百度了一下,然后写的,分为了三个部分,见三段代码

代码:主程序代码

import timefrom selenium import webdriverfrom private_info import *
import send_mail

def 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 smtplib
from email.mime.text import MIMEText
from 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 自动打卡的资料请关注易盾网络其它相关文章!

网友评论