- 点击上方“视学算法”订阅我吧!-

注:此项目仅供娱乐练习,女朋友还是要认真用心的交往哦~

   01 简介   

脱单狗福利!每天不同时间段给女友定时给女友发消息,不错过早上起床、中午吃饭、晚上吃饭、晚安时间!
有时候,你很想关心她,但是你太忙了,以至于她一直抱怨,觉得你不够关心她。你暗自下决心,下次一定要准时发消息给她,哪怕是几句话,可是你又忘记了。你觉得自己很委屈?,但是她又觉得你不负责。
现在,再不用担心了,用Python就可以给女友定时发提示消息了,而且不会漏过每一个关键时刻,每天早上起床、中午吃饭、晚上吃饭、晚上睡觉,都会准时发消息给她了,而且还可以让她学习英语单词哦!
在生日来临之时,自动发祝福语。在节日来临之时,比如三八妇女节、女神节、情人节、春节、圣诞节,自动发问候语哦,再也不用担心他说你没有仪式感了~
最重要的时候,实时可以知道女友的情感情绪指数哦,再也不用担心女友莫名其妙生气了。

   02 编写思路   

为了方便快速开发,一般使用 Python 中的wxpy模块完成微信的基本操作。
1. 设置一个config.ini配置文件,并从这个配置文件开始读取信息。这些参数一看就懂,所以无需多言。
# 读取配置文件
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)

如果你愿意,可以在上面对时间的判断中,加入一些其他你想要的,这样你女友就更开心啦!

2. 开启微信机器人,为了程序的健壮性,自动判断一下操作系统,根据不同操作系统执行不同指令:

# 启动微信机器人,自动根据操作系统执行不同的指令
# windows系统或macOS Sierra系统使用bot = Bot()
# linux系统或macOS Terminal系统使用bot = Bot(console_qr=2)
if('Windows' in platform.system()):# Windowsbot = Bot()
elif('Darwin' in platform.system()):# MacOSXbot = Bot()
elif('Linux' in platform.system()):# Linuxbot = Bot(console_qr=2,cache_path=True)
else:# 自行确定print("无法识别你的操作系统类型,请自己设置")

3. 设置完相关参数以后,我们来 get 一下,如何每天教女友学英语:

# 获取每日励志精句
def get_message():r = requests.get("http://open.iciba.com/dsapi/")note = r.json()['note']content = r.json()['content']return note,content

4. 只有每天的问候和节日问候是仅仅不够的,我们必须时刻知道她的情绪指数,这里可以使用snowNlp或者jieba来做分析,但是为了能够在打包成exe可执行文件时使得程序尽可能小,我们采取直接调用接口的方式来做。代码如下:

# 接收女友消息监听器
# 女友微信名
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 当前情感得分:%s 越接近1表示心情越好,越接近0表示心情越差,情感结果仅供参考,请勿完全相信!" % (msg.text, now_mod_rank))# 发送信息到文件传输助手mood_message = u"来自女友的消息:" + msg.text + " 当前情感得分:" + now_mod_rank + " 越接近1表示心情越好,越接近0表示心情越差,情感结果仅供参考,请勿完全相信!"bot.file_helper.send(mood_message)

5. 教完女友学英语后,开始把我们的关心语发给她。这里涉及到wxpy模块的相关操作:

# 发送消息给她
def send_message(your_message):try:# 对方的微信名称my_friend = bot.friends().search(my_lady_wechat_name)[0]# 发送消息给对方my_friend.send(your_message)except:# 出问题时,发送信息到文件传输助手bot.file_helper.send(u"守护女友出问题了,赶紧去看看咋回事~")

6. 如何每天定时发关心语,首先来个while循环,365天无限关心

 # 来个死循环,24小时关心她while(True):# 提示print("守护中,时间:%s"% time.ctime())# 每天定时问候,早上起床,中午吃饭,晚上吃饭,晚上睡觉# 获取时间,只获取时和分,对应的位置为倒数第13位到倒数第8位now_time = time.ctime()[-13:-8]if (now_time == say_good_morning):# 随机取一句问候语message = choice(str_list_good_morning)# 是否加上随机表情if(flag_wx_emoj):message = message + choice(str_list_emoj)send_message(message)print("提醒女友早上起床:%s" % time.ctime())…………这下面还有很多代码,我就不列出来了…………# 延时60秒time.sleep(60)

最后,输入以下代码开始守护女友模式吧~
    # 开始守护女友t = Thread(target=start_care, name='start_care')t.start()

   03 使用教程   

pip安装下列包:

  • [x] pip install wxpy
  • [x] pip install requests

设置以下内容:

  [configuration]# 设置女友的微信名称,记住,不是微信ID也不是微信备注
my_lady_wechat_name = 小强子# 设置女友生日信息
# 若某一项月份或者日期不想设置,请输入99,不能留空
# 几月,注意补全数字,为两位数,比如6月必须写成06
birthday_month = 03
# 几号,注意补全数字,为两位数,比如6号必须写成08
birthday_day = 18# 设置早上起床时间,中午吃饭时间,下午吃饭时间,晚上睡觉时间
# 若某一项时间不想设置,请输入99:00,不能留空
say_good_morning = 03:09
say_good_lunch = 03:10
say_good_dinner = 03:11
say_good_dream = 03:12# 设置晚上睡觉问候语是否在原来的基础上再加上每日学英语精句
# 1表示是,0表示否
flag_learn_english = 1# 设置所有问候语结束是否加上表情符号
# 1表示是,0表示否
flag_wx_emoj = 1# 设置节日祝福语
# 情人节祝福语
str_Valentine = 亲爱的,情人节快乐!我想和你一起分享生命中的每一天,直到永远。# 三八妇女节祝福语
str_Women = 嘿,女神节到了,祝我的女神开心快乐!你每天都是那么好看^_^# 平安夜祝福语
str_Christmas_Eve = 宝贝,平安夜快乐,你吃苹果了吗?n(*≧▽≦*)n# 圣诞节祝福语
str_Christmas = 小仙女,圣诞节快乐哦!(づ ̄3 ̄)づ╭❤~# 她生日的时候的祝福语
str_birthday = 亲爱的,生日快乐,我已经给你准备好了礼物哦,明天你就能看到啦!(*@ο@*) 哇~

   04 演示图片   

End.

来源:养码场

我就知道你“在看”

利用Python搞定女朋友的小情绪~相关推荐

  1. python画圆形螺旋线_硬核教程,利用 Python 搞定精美网络图!

    硬核教程, 利用 Python 搞定精美网络图! 一.NetworkX 概述 NetworkX 是一个用 Python 语言开发的图论与复杂网络建模工具,内置了常用的图与复杂网络分析算法,可以方便的进 ...

  2. 【Python基础】利用 Python 搞定精美网络图!

    作者:叶庭云     编辑:Lemon      出品:Python数据之道 一.NetworkX 概述 NetworkX 是一个用 Python 语言开发的图论与复杂网络建模工具,内置了常用的图与复 ...

  3. python画圆形螺旋线_【Python基础】利用 Python 搞定精美网络图!

    作者:叶庭云     编辑:Lemon      出品:Python数据之道 一.NetworkX 概述NetworkX 是一个用 Python 语言开发的图论与复杂网络建模工具,内置了常用的图与复杂 ...

  4. python 画虚线_宝宝爱看小猪佩奇,很简单,让我们用python搞定它

    宝宝爱看小猪佩奇,很简单,让我们用python搞定它 现在很多宝宝喜欢看小猪佩奇,今天就教大家用python的海龟画图画一个乖巧萌萌的小猪佩奇,引导对编程产生浓浓 的兴趣. 画图前引导 1.让我们打开 ...

  5. 用python画小猪佩奇动画片全集_宝宝爱看小猪佩奇,很简单,让我们用python搞定它...

    宝宝爱看小猪佩奇,很简单,让我们用python搞定它 现在很多宝宝喜欢看小猪佩奇,今天就教大家用python的海龟画图画一个乖巧萌萌的小猪佩奇,引导对编程产生浓浓 的兴趣. 画图前引导 1.让我们打开 ...

  6. 合理利用正则表达式搞定算法题

    合理利用正则表达式搞定算法题 下面是网易的21年的笔试题,比较简单的两个. 1:给定两个字符串 s和 t ,判断 s是否为 t 的子序列. 你可以认为 s 和 t 中仅包含英文小写字母.字符串 t 可 ...

  7. python做小程序-【实战案例】利用Python做出趣味版防沉迷小程序

    今天带领大家利用Python做出趣味版防沉迷小程序 查询电脑的所有进程 用Python循环检测电脑软件的运行情况,当发现游戏软件时弹出警告窗口,并截图保存.学会这项技能,就再也不怕孩子偷偷打游戏了.下 ...

  8. 50行Python搞定京东商品抢购

    50行Python搞定京东商品抢购 之前写的一篇京东抢购商品传送门,由于京东账号登录图片验证码改为了极验验证码,一直在尝试怎么用请求来去破解,而不是selenium去模拟点击,但是技不如人搞不定... ...

  9. python推箱子小游戏_小伙利用Python自制一个推箱子小游戏!

    原标题:小伙利用Python自制一个推箱子小游戏! 导语 月初更波python制作小游戏系列吧用python写了个推箱子小游戏,在这里分享给大家,让我们愉快地开始吧 小伙利用Python自制一个推箱子 ...

最新文章

  1. 拆解交易系统--性能优化,安全加固与弹性扩缩容
  2. Qt pro使用sql之类的需要添加的模块
  3. Activity具体解释(生命周期、以各种方式启动Activity、状态保存,全然退出等)...
  4. 区块链BaaS云服务(21)腾讯CCGP”跨链事务“
  5. [vue-element]有阅读过ElementUI的源码吗?
  6. vue获取当前月最后一天_只争朝夕,不负韶华——站在2020年第一天,回望2019最后的两个月...
  7. 蓝桥杯 BASIC-4 基础练习 数列特征
  8. 中南大学 09 MATLAB 矩阵的处理
  9. 虽然保持了连续代码生产量但是仔细想想也没什么必要
  10. 基于RV1126平台imx291分析 --- media注册
  11. Linux 题库及答案永久开放共同学习进步
  12. DHT分布式哈希表通俗讲解
  13. 文本表达:解决BERT中的各向异性方法总结
  14. c语言编译bss和data,.bss段和.data段的区别
  15. PPT基础(一)怎么把图片设置为背景
  16. 关于 字号、PX像素、PT点数、em、CM厘米、MM毫米之间的换算
  17. 教育行业分享-基础篇
  18. 表格的常用属性介绍:
  19. 2018年美亚杯电子数据取证大赛-资格赛wp
  20. 《Deep Learning》中文翻译总结

热门文章

  1. iPhone 手机官方查询网站
  2. 洛谷大佬的题解 p1427小鱼倒数字
  3. 项目总延期?需求乱插队?程序员如何做好项目管理
  4. 简历上的内容总结(1)
  5. 医学影像分割系统综述Data preparation for artificial intelligence in medical imaging: A comprehensive guide ...
  6. poi导出报表设置字体颜色
  7. 护眼灯什么价位的好?眼科医生推荐的护眼灯
  8. 【事故】记一次意外把公司项目放到GitHub并被fork,如何使用DMCA下架政策保障隐私
  9. c++ 箭头符号怎么打_关于C/C++中的点操作符和箭头操作符
  10. C语言学习(个人笔记)