免费一个彩虹屁机器人

目的:五分钟教你搭建一个免费的机器人,每天定时给女票发送信息

女朋友老是说我发信息不及时,连早安晚安都不发

于是我就找遍网络以寻求解决之法,终于让我找到了

自己搭建一个机器人,每天给他发问候的邮件

而且还免费

准备工作

  • 要有一个网易的邮箱

  • 要知道对象的qq邮箱

  • 要有一个腾讯云账号

腾讯云上边有一个云计算功能,每月有100万次的调用次数,所以说是免费使用

第一步:打开腾讯云服务器 (如果没有账号先注册)

腾讯云登录

找到云函数

点击管理控制台

点击函数服务之后再点击新建

设置一个函数名;

运行环境选择python 3.6 ;

创建方式是空表函数
在这里插入图片描述

第二步:

将以下代码复制,

只需要修改有你的和对方的邮箱号

# -*- coding: utf8 -*-
# coding=utf-8

import io
import sys
import time
import datetime

import requests

from email.mime.text import MIMEText
from email.header import Header
import smtplib

import logging
logger = logging.getLogger()
logger.setLevel(logging.INFO)

mail_host = "smtp.163.com"
mail_user = "[email protected]" #此处填你的邮箱
mail_girl = "[email protected]" #你女票的邮箱
mail_pass = "zzzzzzz" #邮箱授权码
name_girl = "康康" #你女票的名字
mail_port = 465


sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')

def getWeather():
    r = requests.get(
    #这个是获取天气的信息,可以复制到浏览器
        'http://wthrcdn.etouch.cn/weather_mini?city=%E6%9B%B2%E9%98%9C')
    if 'OK' in r.text:
        r = r.json()['data']
        tip = r['ganmao']
        temperature = r['wendu']
        weather = r['forecast'][0]['type']
        return f'天气:{weather} 当前温度:{temperature}\n{tip}'
    return '获取天气失败:('


def getTime():
    today = datetime.datetime.now()+datetime.timedelta(hours=+8)
    date2 = time.strptime('2020-12-25', "%Y-%m-%d")#这个我填的是考研的日期,用作考研倒计时
    date3 = datetime.datetime(date2[0], date2[1], date2[2])
    t = today.timetuple()
    days = (date3-today).days
    return f'今天是{t.tm_year}年{t.tm_mon}月{t.tm_mday}日 星期{t.tm_wday+1} 考研倒计时:{days}天'


def getPi():
    r = requests.get('https://chp.shadiao.app/api.php').text
    return r if len(r) > 3 else '你上辈子一定是碳酸饮料吧,为什么我一看到你就开心的冒泡'


def morning():
    return '\n'.join([getTime(),  getWeather(), getPi()])


def night():
    return '\n'.join([getSoup(), getPi(), f'晚安,{name_girl}同学,今天你也是最棒的,继续加油鸭!'])


def getTimeX():
    t = int(time.strftime("%H", time.localtime()))+8
    if t > 24:
        t = t-24
    return 'morning' if t < 11 else ('noon' if t < 17 else 'afterNoon')


def main_handler(event, context):
    smtpObj = smtplib.SMTP_SSL(mail_host, mail_port)
    try:
        smtpObj.login(mail_user, mail_pass)
    except smtplib.SMTPException as e:
        logger.info(e)
        return False
    content = night() if getTimeX() == 'afterNoon' else morning()
    message = MIMEText(content, 'plain', 'utf-8')
    message['From'] = mail_user
    message['To'] = mail_girl
    message['Subject'] = f'早安,{name_girl}' if getTimeX() != 'afterNoon' else '晚安,xxx'
    try:
        smtpObj.sendmail(mail_user, [mail_girl], message.as_string())
        logger.info("send email success")
    except smtplib.SMTPException as e:
        logger.info(e)
        logger.info("Error: send email fail")
    logger.info(content)
    return content

获取邮箱授权码的方法:

登录你的网易邮箱

点击设置;打开POP3这个选项

选择第一个点击开启

会弹出一个弹窗,不用下载,点击继续开启

弹出第二个弹窗用微信扫一下,发送信息

把这个授权码复制,黏贴到代码的相应位置就可以了

点击完成

会跳转到这个页面,可以把收信人的邮箱号换一下你的,测试以下

这样标识测试成功

此时手机QQ可以收到邮件

测试成功后就可以添加定时器了,让它定时发邮件,或者每隔多长时间发邮件

这是我设置的时早上6.30触发的定时器,还可以自己新建一个晚上的

在这里插入图片描述

先从网上整了个天气查询接口:http://wthrcdn.etouch.cn/weather_mini?city=

下面再整个彩虹屁接口:https://chp.shadiao.app/api.php

然后再友情赠送一个毒鸡汤接口:https://www.iowen.cn/jitang/api/

这样就大功告成了…

双十一的云服务器还有最后两天呦,想搭建网站自己玩玩的赶紧上车吧,新用户只需要88一年,赶紧上车吧

【腾讯云】11.11 云上盛惠,云产品限时抢购,1核2G云服务器首年88元

【腾讯云】新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。

							学习的时光总是短暂,又到了时候说拜拜
								欢迎关注公众号  oldCode
									获取新鲜教程资料

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/buruyang/article/details/110286148