拿来了解女朋友情绪变化,顺道自动回复。

6.14号更新:接入图灵机器人,可以自动回复的版本加入图灵机器人的版本来了七月在线:“对不起,分手吧,我爱上了你做的聊天机器人。”​zhuanlan.zhihu.com

再也不用担心工作忙,没法经常和她/他/它聊天了。

可以实时知道女友的情感情绪指数,再也不用担心女友莫名其妙生气了。

还能顺道教女朋友学英语(女朋友一定很惊喜)

为了方便快速开发,我们使用python中的wxpy模块完成微信的基本操作。

首先,我们设置一个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)

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

# 获取每日励志精句

def get_message():

r = requests.get("http://open.iciba.com/dsapi/")

note = r.json()['note']

content = r.json()['content']

return note,content

如果你愿意,可以在上面对时间的判断中,加入一些其他你想要的,这样你女友就更开心啦!后期如果有时间,我将会加上以上节日问候功能。

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

# 启动微信机器人,自动根据操作系统执行不同的指令

# 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("无法识别你的操作系统类型,请自己设置")

只有每天的问候和节日问候是仅仅不够的,我们必须时刻知道她的情绪指数,这里可以使用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\n当前情感得分:%s\n越接近1表示心情越好,越接近0表示心情越差,情感结果仅供参考,请勿完全相信!\n\n" % (msg.text, now_mod_rank))

# 发送信息到文件传输助手

mood_message = u"来自女友的消息:" + msg.text + "\n当前情感得分:" + now_mod_rank + "\n越接近1表示心情越好,越接近0表示心情越差,情感结果仅供参考,请勿完全相信!\n\n"

bot.file_helper.send(mood_message)

教完女友学英语后,开始把我们的关心语发给她。这里涉及到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"守护女友出问题了,赶紧去看看咋回事~")

最后,就是如何每天定时发关心语给女友的问题了。

首先来个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()

使用教程

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 = 亲爱的,生日快乐,我已经给你准备好了礼物哦,明天你就能看到啦!(*@ο@*) 哇~

演示图片

至于没有女朋友的……

要不考虑一下它

你要是还不会Python……

转载自公众号“七月在线实验室”

↓↓↓

公号后台回复“666”。即可免费获得 七月在线【面试求职 第四期】课程+最新升级版《名企AI面试100题》电子书。

《名企AI⾯试100题》涵盖计算机语⾔基础、算法和⼤数据、机器学习、深度学习、应⽤⽅向 (CV NLP 推荐 ⾦融风控)等五⼤章节,每⼀段代码、每⼀道题⽬的解析都经过了反复审查或review。

部分内容展示(点击图片可查看大图)

底层用python、前台用什么_你都用 Python 来做什么?相关推荐

  1. python国内书籍推荐_这些都是Python官方推荐的最好的书籍

    转行学Python有前途吗?这个答案是肯定的,AI课程都已经进入小学教材了,未来Python趋势无疑是光明的,但是如何学习Python,很多Python小白都来问小编有什么适合的Python入门书籍推 ...

  2. python 书籍 办公 自动化_你们都用Python实现了哪些办公自动化?

    这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手?python在自动化办公领域越来越受欢迎,批量处理简直是加班族的福音. 自动化办公无非是excel.ppt.word. ...

  3. python批量处理 办公_你们都用Python实现了哪些办公自动化?

    这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手?python在自动化办公领域越来越受欢迎,批量处理简直是加班族的福音. 自动化办公无非是excel.ppt.word. ...

  4. python常用库教程_这几个python常用的库你必须知道!

    随着人工智能时代的到来,python变得更加流行.受欢迎,功能强大.简单易学.容易入门.应用广泛等,掀起了学习热潮,现在越来越多人转行都会学习python语言.为了让大家快速掌握python,今天为大 ...

  5. python语言运行效率高_如何评价说PYTHON是最快的语言?

    我是视频的作者,首先感谢朋友们的关注,并且诞生了这个论题,让我可以看到大家对我视频中的观点的反馈.对于大家的讨论,在日常时间允许的条件下,我会尽量参与.下面就我目前已经看到的朋友们的评论,做一下展开. ...

  6. python怎么打日志_怎样调试 日志 python 代码

    展开全部 使用 pdb 进行调试 pdb 是 python 自带e5a48de588b662616964757a686964616f31333361306366的一个包,为 python 程序提供了一 ...

  7. c++中的引用和python中的引用_对比 C++ 和 Python,谈谈指针与引用

    作者 | 樱雨楼 引言 指针(Pointer)是 C.C++ 以及 Java.Go 等语言的一个非常核心且重要的概念,而引用(Reference)是在指针的基础上构建出的一个同样重要的概念. 指针对于 ...

  8. python入门第一课_入门第一课 Python入门涉及的问题及简单示例

    很多初学者都在问:我想自学Python,该怎样入门?入门选择哪些书籍? 下面,我以自己的理解作出解答. 1.先说明大体的学习进度. Python确实入门较为容易,语法清晰易懂.一旦入了门再想提高就和其 ...

  9. python编码转换语句_好程序员Python教程之字符串编码知识小结

    好程序员Python教程之字符串编码知识小结,提及Python字符串,你会想到什么?是ASCII,还是Unicode?他们之间是如何转换的?字符串编码和字符串有什么区别?接下来好程序员Python教程 ...

最新文章

  1. sed和awk中使用shell变量
  2. CentOS6.3 Samba安装配置、多用户、加域
  3. 《软件过程改进》练习题
  4. mysql count if 去重_MYSQL数据去重
  5. Java 替换字符串中的回车换行符的方法
  6. mysql5.6.19安装图解_mysql5.6.19安装说明
  7. [转载] Python杂谈 | (6) numpy中array()和asarray()的区别
  8. Javascript之基本包装类型
  9. html打印表格样式,HTML打印表格
  10. C# 操作Word页眉页脚——奇偶页/首页不同、不连续设置页码、复制页眉页脚、锁定页眉页脚、删除页眉页脚...
  11. java 配置文件加密_Spring cloud config 配置文件加密方式
  12. 剪辑过的视频md5会改变
  13. 用神经网络实现语音分类
  14. 解决vue-admin-template插件element UI组件默认英文改中文
  15. Nautilus无法创建下列所需的文件夹:/home/user/Desktop 报错解决
  16. 【QT】Qtcreator常用快捷键
  17. 前端之从头开始学《红宝石》
  18. 计算机组成原理扩展指令CLC实验报告,计算机组成原理实验设计
  19. 运行tomcat7w.exe,提示:指定的服务未安装unable to open the service tomcat7
  20. 网络重置后没有wifi连接解决办法

热门文章

  1. 【全电发票】识别,支持PDF/OFD/XML格式
  2. 不能以“一时一事”来衡量转型,灿谷的方向是对的
  3. 2020年10月30日提高组 A 大鱼吃小鱼
  4. 八、双色球彩票,股票,快递,身份证查询
  5. SAP库龄报表逻辑理解
  6. Numpy之reshape()详解
  7. 汇编第一次实验(16位二进制对十进制的转换)
  8. 第四章 博弈树game tree
  9. 学成在线笔记+踩坑(7)——绑定媒资
  10. 首席新媒体运营商学院黎想:用户增长的万能公式