• python中的日志操作和发送邮件


    1、python中的日志操作

    • 安装log模块:pip install nnlog 
    • 参数:my_log = nnlog.Logger('server_log.log',level='debug',backCount=5,when='D',interval=2)
      • ‘server_log.log’ 日志文件名称,必填参数
      • level 指log的级别,默认为debug级别。总共有debug,info, warning, error这四种级别
      • backCount=5 为默认值,是日志的保存时间,保存几天的日志
      • when=‘D’ 为默认值,指按照天保存日志,可以为分钟,秒
      • interval=1 为默认值,间隔时间
    复制代码
    import nnlog
    nnlog.Logger.words='哈哈哈哈'
    
    log = nnlog.Logger('book_server.log')
    
    # debug 最详细的log内容
    # info 显示调用方法等信息
    # warning 显示warning和error的log
    # error 只显示error的log
    log.surprise()
    log.debug('xxx值是什么')
    log.info('调用了什么xxx')
    log.warning('xx警告!')
    log.error('xxx出错!')
    复制代码

    2、python操作自动发送邮件

      • yagmail.SMTP
        • username:邮箱账号
        • passwd:获取邮箱授权码,注意不是邮箱登录密码
      • QQ邮箱:设置→帐户→POP3/SMTP服务开启→生成授权码
      • 163邮箱:设置→客户端授权密码→设置客户端授权码开启
      • host:
        • QQ邮箱:smtp.qq.com
        • 163邮箱:smtp.163.com
      • smtp_ssl=True:安全协议的,现在大部分邮箱都是有这个,可以自己尝试。如QQ邮箱,126,139邮箱等,需要设置安全协议为True
    • mail.send
      • to:收件人,to='xxxx@qq.com'  。如果需要发送给多人,to=['xxx@qq.com','xxx@qq.com']
      • cc:抄送人,cc='xxxx@qq.com'  。如果需要抄送给多人,cc=['xxx@qq.com','xxx@qq.com']
      • subject:邮件主题
      • contents:邮件正文
      • attachment:附件,如果发送附件名称中文乱码,使用更新后的文件yagmail-0.10.212-py2.py3-none-any.whl
    复制代码
    import yagmail
    username='uxxxp4p@163.com'
    password='hxxxxxx3'#生成授权码,qq、163、126都是授权码
    
    mail_server = 'smtp.163.com'
    # mail_server = 'smtp.qq.com'
    # mail_server = 'smtp.126.com'
    
    m = yagmail.SMTP(user=username,password=password,host=mail_server)
                # smtp_ssl=True,如果邮箱使用了安全协议,就需要加这个
                #qq邮箱等就是使用了安全协议
    
    to = ['1137xxxx@qq.com','wxxx16@163.com','xxxx@qq.com']
    cc = ['613xxxx7@qq.com','1196xxxx2@qq.com','1xxxxx04@qq.com']# 发送给多人,to传list(win10路径写\)
    m.send(to=to,cc=cc,subject='今天吃了吗', contents='今天吃鱼肉了吗,吃饱没', attachments=r'tools.py')
    复制代码
  • 相关阅读:
    AjaxWebService返回ArrayList
    Android中将布局文件/View添加至窗口过程分析 从setContentView()谈起
    Andriod中绘(画)图Canvas的使用详解
    Android中获取正在运行的应用程序ActivityManager.RunningAppProcessInfo类详解
    Android 应用程序模块: 应用, 任务, 进程, 和线程
    Android中获取正在运行的服务ActivityManager.RunningServiceInfo的使用
    android面试题整理
    Android中获取系统内存信息以及进程信息ActivityManager的使用(一)
    Android中View绘制流程以及invalidate()等相关方法分析
    android:windowSoftInputMode详解
  • 原文地址:https://www.cnblogs.com/denise1108/p/10184960.html
Copyright © 2020-2023  润新知