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

 更新时间:2020年10月10日 08:30:27   作者:阳光中的影子  
这篇文章主要介绍了python实现自动打卡的示例代码,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下

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

代码:主程序代码

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 自动打卡的资料请关注脚本之家其它相关文章!

相关文章

  • Python Numpy 数组的初始化和基本操作

    Python Numpy 数组的初始化和基本操作

    Python 是一种高级的,动态的,多泛型的编程语言。接下来通过本文给大家介绍Python Numpy 数组的初始化和基本操作,感兴趣的朋友一起看看吧
    2018-03-03
  • python中创建和修改yaml文件的方法

    python中创建和修改yaml文件的方法

    YAML 是 "YAML Ain’t a Markup Language"的递归缩写,yaml简洁美观,是一种常用的标记语言,可以用来表达多种数据结构和配置文件,本文给大家介绍python中如何创建和修改yaml文件,感兴趣的朋友一起看看吧
    2023-11-11
  • Python如何显示所有汉字

    Python如何显示所有汉字

    这篇文章主要介绍了Python如何显示所有汉字问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-04-04
  • PID原理与python的简单实现和调参

    PID原理与python的简单实现和调参

    这篇文章主要介绍了PID原理与python的简单实现和调参文章围绕主题展开详细的内容介绍,具有一定的参考价值。感兴趣的小伙伴可以参考一下
    2022-08-08
  • python点击鼠标获取坐标(Graphics)

    python点击鼠标获取坐标(Graphics)

    这篇文章主要为大家详细介绍了python点击鼠标获取坐标,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • Python3使用requests模块实现显示下载进度的方法详解

    Python3使用requests模块实现显示下载进度的方法详解

    这篇文章主要介绍了Python3使用requests模块实现显示下载进度的方法,结合实例形式分析了Python3中requests模块的配置、使用及显示进度条类的相关定义方法,需要的朋友可以参考下
    2019-02-02
  • 解决Pycharm调用Turtle时 窗口一闪而过的问题

    解决Pycharm调用Turtle时 窗口一闪而过的问题

    今天小编就为大家分享一篇解决Pycharm调用Turtle时 窗口一闪而过的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • Python如何识别 MySQL 中的冗余索引

    Python如何识别 MySQL 中的冗余索引

    冗余索引也是一个非常重要的巡检目,表中索引过多,会导致表空间占用较大,索引的数量与表的写入速度与索引数成线性关系(微秒级),如果发现有冗余索引,建议立即审核删除,这篇文章主要介绍了Python 识别 MySQL 中的冗余索引,需要的朋友可以参考下
    2022-10-10
  • Python中xml.etree.ElementTree的使用示例

    Python中xml.etree.ElementTree的使用示例

    ElementTree是Python标准库中的一个模块,专门用于处理XML文件,它提供了解析、创建、修改和遍历XML文档的API,非常适合处理配置文件、数据交换格式和Web服务响应等场景,本文就来介绍一下,感兴趣的可以了解一下
    2024-09-09
  • pandas的排序和排名的具体使用

    pandas的排序和排名的具体使用

    这篇文章主要介绍了pandas的排序和排名的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07

最新评论