用python给女朋友写了个自动提醒的程序

事件背景是经常有很多琐碎的事情需要在某个时间点去做,光靠人力去记,容易出现偏差,尤其是对容易迷糊的选手。
在这里插入图片描述
所以动手写了一套代码,可以按需要通过微信发送消息,不论是给自己充当自动提醒的备忘录还是给其他人发送定时消息,都可以在这套代码的基础上实现。

首先放上最终成果示例:
这里插入图片描述
图中的文字都是可以根据自身需要而进行修改的,所以文章中附上的代码也只是抛砖引玉,读者可以根据自身需要而进行调整。本篇文章会分三个部分,依次介绍实现的方式,分别是

  1. 文本内容的确定
  2. 微信端发送消息的实现
  3. 定时任务的设置

第一步:文本内容的确定

这里说的“文本内容”实际指的就是你想要发送的信息,所以其内容是大相径庭的,需要根据自身需要进行调整,作者也就简单介绍一下截图里内容对应的代码,截图中的第一行“每日早安”是微信发消息时设置的,第二行是简单的打招呼,纯文字即可,此处按下不表。
第三行“现在是2021-10-07 11:25,星期四”,发送消息时的日期与星期数,其对应的python脚本如下:

# 发送内容 今日日期与星期数
import datetime
import calendar
import time
sysdate = datetime.date.today()  # 只获取日期
now_time = datetime.datetime.now()  # 获取日期加时间
week_day = sysdate.isoweekday()  # 获取周几
week = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期天']
text_date = '现在是' + str(now_time)[0:16] + ',' + week[week_day -1 ]
print(text_date)

第四行“天气情况是晴,温度是8~19摄氏度”,这里会涉及一个简单的爬虫,需要我们去天气网站上爬取当前天气情况,脚本如下:

#发送内容:天气情况
import requests
from bs4 import BeautifulSoup
import datetime

url = 'http://www.weather.com.cn/weather/101010300.shtml'
sysdate=datetime.date.today()
r = requests.get(url, timeout=30)  # 用requests抓取网页信息
r.raise_for_status()  # 可以让程序产生异常时停止程序
r.encoding = r.apparent_encoding #编码格式
html=r.text

final_list = []
soup = BeautifulSoup(html, 'html.parser')  # 用BeautifulSoup库解析网页 #soup里有对当前天气的建议
body = soup.body #从soup里截取body的一部分
data = body.find('div', {
   'id': '7d'})
ul = data.find('ul')
lis = ul.find_all('li')

for day in lis:
    temp_list = []

    date = day.find('h1').string  # 找到日期
    if date.string.split('日')[0]==str(sysdate.day):
        temp_list = []

        date = day.find('h1').string  # 找到日期
        temp_list.append(date)

        info = day.find_all('p')  # 找到所有的p标签
        temp_list.append(info[0].string)

        if info[1].find('span') is None:  # 找到p标签中的第二个值'span'标签——最高温度
            temperature_highest = ' '  # 用一个判断是否有最高温度
        else:
            temperature_highest = info[1].find('span'
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孟意昶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值