美文网首页Python技巧大全
个人成长秘籍之二,打造自己的小助理

个人成长秘籍之二,打造自己的小助理

作者: DigiHacker | 来源:发表于2020-02-04 09:27 被阅读0次
    image

    我们几乎每时每刻都在刷各种手机app。看看微信有没有人找你 ,看看邮件有没有老板布置的任务,看看新闻有没有大事发生,看看抖音有没有新的傻雕,看看公开课假装学习一下。看起来好像信息时代弄潮儿,其实只沦落为app测试员。

    机智如小编,可以写些简单的小脚本收集汇总下信息。但又沦落为自己程序的奴隶。每隔几分钟就跑下自己写的丑陋app,看看有没有更新。这样很不酷啊。什么叫酷,12年前的钢铁侠第一集就给了我们标准答案。所有的信息收集整理和推送都应该交给电脑来做,我们只需要专心注意我们要做的大事上。

    如何实现呢?我们需要一个后台程序定时运行任务,推送结果。最简单的解决方案就是用Windows自带的计划任务和电子邮件,步骤如下图

    image image image image image

    同时你的脚本还需要加入发送邮件功能,如果结果是纯文本的话,在邮件客户端里格式可能会乱,所以最好转成html样式。象pandas直接带to_html方法。代码如下

    <pre language="typescript" code_block="true">def send_mail(fromaddr, toaddrs, subject, body):

    try:
        if body.startswith('<'):
            msg = MIMEText("<html><body>%s</body></html>"
                           % (fromaddr, toaddrs, subject, body), 'html', 'utf-8')
            msg['From'] = fromaddr
            msg['To'] = toaddrs
            msg['Subject'] = subject
            msg = msg.as_string()
        else:
            msg = ("From: %s\r\nTo: %s\r\nSubject: %s\n\n%s"
                   % (fromaddr, ", ".join(toaddrs), subject, body)).encode('utf-8')
        print("Message length is", len(msg))
        server = SMTP_SSL('smtp.qq.com')
        server.set_debuglevel(1)
        server.login("test@qq.com", "ssss")
        server.sendmail(fromaddr, [toaddrs], msg)
        server.quit()
    except Exception as e:
        print(e)
    

    if name == 'main':
    total = load_all_sites(sites).to_html()
    from datetime import datetime

    time = datetime.now().strftime("%Y-%m-%d %H:%M")
    print(time)
    print(str(total))
    
    send_mail("test@qq.com", "test@qq.com", f"报表_{time}", str(total))</pre>
    

    注意时间变量time是最好加到subject里的,一是方便日后追踪,二是防止邮件服务误判为垃圾邮件。至于send_mail的细节,请参阅我之前的文章

    相关文章

      网友评论

        本文标题:个人成长秘籍之二,打造自己的小助理

        本文链接:https://www.haomeiwen.com/subject/deglxhtx.html