# 每天不同时间段通过微信发消息提醒女友
## 简介
有时候,你很想关心她,但是你太忙了,以至于她一直抱怨,觉得你不够关心她。你暗自下决心,下次一定要准时发消息给她,哪怕是几句话,可是你又忘记了。你觉得自己很委屈😭,但是她又觉得你不负责。
<br />
**现在,再不用担心了**,用python就可以给女友定时发提示消息了,**而且不会漏过每一个关键时刻**,每天**早上起床、中午吃饭、晚上吃饭、晚上睡觉**,都会准时发消息给她了,而且还可以让她**学习英语单词**哦!
<br />
在生日来临之时,自动发祝福语。在节日来临之时,比如**三八妇女节、女神节、情人节、春节、圣诞节**,自动发问候语哦,再也不用担心他说你没有仪式感了😀
<br />
最重要的时候,实时可以知道女友的**情感情绪指数**哦,再也不用担心女友莫名其妙生气了。
## 编写思路
为了方便快速开发,我们使用python中的wxpy模块完成微信的基本操作。
首先,,我们设置一个**config.ini**配置文件,并从这个配置文件开始读取信息。这些参数一看就懂,所以无需多言。
```python
# 读取配置文件
cf = configparser.ConfigParser()
cf.read("./config.ini",encoding='UTF-8')
# 设置女友的微信名称,记住,不是微信ID也不是微信备注
# 你女友的微信名称,记住,不是微信ID也不是微信备注
my_lady_wechat_name = cf.get("configuration", "my_lady_wechat_name")
# 设置早上起床时间,中午吃饭时间,下午吃饭时间,晚上睡觉时间
say_good_morning = cf.get("configuration", "say_good_morning")
say_good_lunch = cf.get("configuration", "say_good_lunch")
say_good_dinner = cf.get("configuration", "say_good_dinner")
say_good_dream = cf.get("configuration", "say_good_dream")
# 设置女友生日信息
# 几月,注意补全数字,为两位数,比如6月必须写成06
birthday_month = cf.get("configuration", "birthday_month")
# 几号,注意补全数字,为两位数,比如6号必须写成08
birthday_day = cf.get("configuration", "birthday_day")
# 读取早上起床时间,中午吃饭时间,下午吃饭时间,晚上睡觉时间的随机提示语
# 一般这里的代码不要改动,需要增加提示语可以自己打开对应的文件修改
#早上起床问候语列表,数据来源于新浪微博
str_list_good_morning = ''
with open("./remind_sentence/sentence_good_morning.txt", "r",encoding='UTF-8') as f:
str_list_good_morning = f.readlines()
print(str_list_good_morning)
#中午吃饭问候语列表,数据来源于新浪微博
str_list_good_lunch = ''
with open("./remind_sentence/sentence_good_lunch.txt", "r",encoding='UTF-8') as f:
str_list_good_lunch = f.readlines()
print(str_list_good_lunch)
#晚上吃饭问候语列表,数据来源于新浪微博
str_list_good_dinner = ''
with open("./remind_sentence/sentence_good_dinner.txt", "r",encoding='UTF-8') as f:
str_list_good_dinner = f.readlines()
print(str_list_good_dinner)
#晚上睡觉问候语列表,数据来源于新浪微博
str_list_good_dream = ''
with open("./remind_sentence/sentence_good_dream.txt", "r",encoding='UTF-8') as f:
str_list_good_dream = f.readlines()
print(str_list_good_dream)
# 设置晚上睡觉问候语是否在原来的基础上再加上每日学英语精句
# False表示否 True表示是
if((cf.get("configuration", "flag_learn_english")) == '1'):
flag_learn_english = True
else:
flag_learn_english = False
print(flag_learn_english)
# 设置所有问候语结束是否加上表情符号
# False表示否 True表示是
str_emoj = "(•‾̑⌣‾̑•)✧˖°----(๑´ڡ`๑)----(๑¯ิε ¯ิ๑)----(๑•́ ₃ •̀๑)----( ∙̆ .̯ ∙̆ )----(๑˘ ˘๑)----(●′ω`●)----(●・̆⍛・̆●)----ಥ_ಥ----_(:qゝ∠)----(´;ω;`)----( `)3')----Σ((( つ•̀ω•́)つ----╰(*´︶`*)╯----( ´´ิ∀´ิ` )----(´∩`。)----( ื▿ ื)----(。ŏ_ŏ)----( •ิ _ •ิ )----ヽ(*΄◞ิ౪◟ิ‵ *)----( ˘ ³˘)----(; ´_ゝ`)----(*ˉ﹃ˉ)----(◍'౪`◍)ノ゙----(。◝‿◜。)----(ಠ .̫.̫ ಠ)----(´◞⊖◟`)----(。≖ˇェˇ≖。)----(◕ܫ◕)----(`◕‸◕´+)----(▼ _ ▼)----( ◉ืൠ◉ื)----ㄟ(◑‿◐ )ㄏ----(●'◡'●)ノ♥----(。◕ˇ∀ˇ◕)----( ◔ ڼ ◔ )----( ´◔ ‸◔`)----(☍﹏⁰)----(♥◠‿◠)----ლ(╹◡╹ლ )----(๑꒪◞౪◟꒪๑)"
str_list_emoj = str_emoj.split('----')
if ((cf.get("configuration", "flag_wx_emoj")) == '1'):
flag_wx_emoj = True
else:
flag_wx_emoj = False
print(str_list_emoj)
# 设置节日祝福语
# 情人节祝福语
str_Valentine = cf.get("configuration", "str_Valentine")
print(str_Valentine)
# 三八妇女节祝福语
str_Women = cf.get("configuration", "str_Women")
print(str_Women)
# 平安夜祝福语
str_Christmas_Eve = cf.get("configuration", "str_Christmas_Eve")
print(str_Christmas_Eve)
# 圣诞节祝福语
str_Christmas = cf.get("configuration", "str_Christmas")
print(str_Christmas)
# 她生日的时候的祝福语
str_birthday = cf.get("configuration", "str_birthday")
print(str_birthday)
```
如果你愿意,可以在上面对时间的判断中,加入一些其他你想要的,这样你女友就更开心啦!后期如果有时间,我将会加上以上节日问候功能。😀
接着,开启微信机器人,为了程序的健壮性,自动判断一下操作系统,根据不同操作系统执行不同指令
```python
# 启动微信机器人,自动根据操作系统执行不同的指令
# windows系统或macOS Sierra系统使用bot = Bot()
# linux系统或macOS Terminal系统使用bot = Bot(console_qr=2)
if('Windows' in platform.system()):
# Windows
bot = Bot()
elif('Darwin' in platform.system()):
# MacOSX
bot = Bot()
elif('Linux' in platform.system()):
# Linux
bot = Bot(console_qr=2,cache_path=True)
else:
# 自行确定
print("无法识别你的操作系统类型,请自己设置")
```
设置完相关参数以后,我们再来学习一下,如何每天教女友`学英语`
```python
# 获取每日励志精句
def get_message():
r = requests.get("http://open.iciba.com/dsapi/")
note = r.json()['note']
content = r.json()['content']
return note,content
```
只有每天的问候和节日问候是仅仅不够的,我们必须时刻知道她的情绪指数,这里可以使用snowNlp或者jieba来做分析,但是为了能够在打包成exe可执行文件时使得程序尽可能小,我们采取直接调用接口的方式来做。代码如下:
```python
# 接收女友消息监听器
# 女友微信名
my_girl_friend = bot.friends().search(my_lady_wechat_name)[0]
# chats=my_girl_friend 表示接收消息的对象,也就是女友
# except_self=False 表示同时也接收自己发的消息,不需要接收自己消息的可以去掉
@bot.register(chats=my_girl_friend, except_self=False)
def print_others(msg):
# 输出聊天内容
print(msg.text)
# 做极其简单的情感分析
# 结果仅供参考,请勿完全相信
postData = {'data':msg.text}
response = post('https://bosonnlp.com/analysis/sentiment?analysisType=',data=postData)
data = response.text
# 情感评分指数(越接近1表示心情越好,越接近0表示心情越差)
now_mod_rank = (data.split(',')[0]).replace('[[','')
print("来自女友的消息:%s\n当前情感得分:%s\n越接近1表示心情越好,越接近0表示心情越差,情感结果仅供参考,请勿完全相信!\n\n" % (msg.text, now_mod_rank))
# 发送信息到文件传输助手
mood_message = u"来自女友的消息:" + msg.text + "\n当前情感得分:" +
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Python中实现定时任务可以使用多种方式,下面介绍两种常见的方法。 1. 使用第三方库schedule: schedule是一个简单易用的Python定时任务库,可以按照指定时间间隔或指定时间点执行任务。 首先,需要安装schedule库:通过命令`pip install schedule`即可。接下来,可以使用以下代码实现定时任务: ```python import schedule import time def task(): # 定时任务要执行的操作 print("This is a scheduled task") # 每隔5秒执行一次任务 schedule.every(5).seconds.do(task) while True: schedule.run_pending() time.sleep(1) ```
资源推荐
资源详情
资源评论
收起资源包目录
每天不同时间段通过微信发消息提醒女友.rar (11个子文件)
每天不同时间段通过微信发消息提醒女友
example2.png 183KB
config.ini 2KB
example3.png 10KB
say_to_lady.py 10KB
example1.png 193KB
README.MD 13KB
remind_sentence
sentence_good_dream.txt 2KB
sentence_good_morning.txt 2KB
sentence_good_dinner.txt 2KB
sentence_good_lunch.txt 2KB
example4.png 34KB
共 11 条
- 1
资源评论
百锦再@新空间代码工作室
- 粉丝: 1w+
- 资源: 806
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功