搭建一个QQ机器人叫女友起床

搭建一个QQ机器人叫女友起床目录前言具体实现1、定时发送信息2、让机器人陪女朋友聊天3、调用一些有趣的接口健康填报小助手开发中。。。写在最后前言上一篇文章介绍了怎么配置机器人框架,并且实现了一些简单的功能。(发送私聊或者群聊信息、接收上报的事件、简单的自动回复等等)这次为了让QQ机器人更加智能,调用了一些实用的接口。通过自己搭建的机器人实现定时叫女朋友起床、和女朋友聊天等功能。如上图所示,我的机器人每天都会准时叫女朋友起床;并且在我忙的时候然而女朋友无聊的时候可以陪她聊一会天。具体实现以下实现的功能都需要机器人已经配置完

大家好,又见面了,我是你们的朋友全栈君。

完整项目包括框架、代码和详细使用说明可以去链接下载(下载完只需要按照使用说明修改几处地方即可搭建成功!):
QQ机器人基础版(文章1-2所有功能)
QQ机器人多功能版(文章1-3所有功能)

下载完只需要按照使用说明修改几处地方即可搭建成功!!

前言

下一篇文章地址:搭建一个多功能机器人详细教程(含爆照功能)

上一篇文章介绍了怎么配置机器人框架,并且实现了一些简单的功能。(发送私聊或者群聊信息、接收上报的事件、简单的自动回复等等)
这次为了让QQ机器人更加智能,调用了一些实用的接口。通过自己搭建的机器人实现定时叫女朋友起床、和女朋友聊天等功能。请添加图片描述
请添加图片描述
如上图所示,我的机器人每天都会准时叫女朋友起床;并且在我忙的时候然而女朋友无聊的时候可以陪她聊一会天。请添加图片描述

具体实现

以下实现的功能都需要机器人已经配置完成,并且已经写好了我上一篇文章的一些函数。
上一篇文章地址(必看)—>>>QQ机器人制作教程,超详细!

1、定时发送信息

要实现这个功能是不难的,只需要引入时间这个变量就可以了,具体代码如下(QQ号、里面的时间和msg自己改):

    if(now.hour==0 and now.minute==0):
        send_msg({ 
   'msg_type': 'private', 'number': qq, 'msg': '晚安!'})
        send_msg({ 
   'msg_type': 'private', 'number': qq, 'msg':'[CQ:poke,qq={}]'.format(qq)})
        time.sleep(60)
        continue
    if (now.hour == 9 and now.minute == 30):
        send_msg({ 
   'msg_type': 'private', 'number': qq, 'msg': '起床了'})
        send_msg({ 
   'msg_type': 'private', 'number': qq, 'msg': '[CQ:poke,qq={}]'.format(qq)})
        time.sleep(60)
        continue
    else:
    	continue

上述代码实现的是:每天零点给女朋友发晚安并戳她一下;每天早上九点半发起床了并戳她一下。这些你自己可以改进,可以发表情包,甚至可以把代码里的’time.sleep(60)’删除,那样就会在一分钟之内连续发信息轰炸她,强烈建议使用!请添加图片描述

2、让机器人陪女朋友聊天

要实现这个功能需要借助API接口了,目前我找到的实用智能回复API接口地址:http://api.qingyunke.com/
在这里插入图片描述

这个接口不仅仅可以聊天,还有一些实用的功能,直接把信息按照格式传入请求url的msg后面就可以返回结果,具体功能如下图所示:
在这里插入图片描述
要实现以上功能都需要获取女朋友给你发的信息,这个在上一篇文章已经写了,获取到后直接调用接口返回结果,再发送给她即可。
下面直接上代码:

                url = 'http://api.qingyunke.com/api.php?key=free&appid=0&msg=' + message
                s = quote(url, safe=string.printable)
                with urllib.request.urlopen(s) as response:
                    html = response.read()
                        # 将获取到的响应内容进行解码,并将json字符串内容转换为python字典格式
                        # 通过下标取到机器人回复的内容
                    qq = rev['sender']['user_id']
                    send_msg({ 
   'msg_type': 'private', 'number': qq,
                                  'msg': eval(html.decode("utf-8"))["content"].replace('{br}', '\n')})   

先判断”post_type”的类型,如果为message表明有人给机器人发消息了;再看”message_type”,如果为private表明这是私聊信息,当然如果为group表明这是群聊信息;然后我们获取信息message=rev[‘raw_message’],拿到这个信息之后就可以设置关键词进行自己回复了。

请添加图片描述

3、调用一些有趣的接口

聚合数据找了一些好玩的接口,有很多都是免费的。
在这里插入图片描述
申请使用一个api会给你请求key,需要先实名认证。
申请一个接口后点击测试,输入两个请求参数即可返回结果。
在这里插入图片描述
在这里插入图片描述

python代码如下(需要使用自己的api请求key):

def horoscope(constellation):
    # 请求地址
    url = "http://web.juhe.cn/constellation/getAll?" + 'consName={}&type=today&key=自己的请求key'.format(constellation)
    # 发送get请求
    r = requests.get(url)
    # 获取返回的json数据
    result = r.json()['summary']
    print(result)
    return result
horoscope('摩羯座')

请添加图片描述

下一篇文章实现更多功能

第三篇文章实现了爆照、生日书、获取歌词、分享音乐等功能,期待大家的一键三连!!
第三篇文章地址:搭建一个多功能机器人详细教程(含爆照、点歌功能)
最近搭建的语音对话机器人体验地址:智能语音对话机器人

完整项目下载地址(电脑配置了python环境)

完整项目包括框架、代码和详细使用说明可以去链接下载(下载完只需要按照使用说明修改几处地方即可搭建成功!):
QQ机器人基础版(文章1-2所有功能)
QQ机器人多功能版(文章1-3所有功能)

下载完只需要按照使用说明修改几处地方即可搭建成功!!
在这里插入图片描述
使用说明是word版本,说的十分详细,分为以下四个方面:
在这里插入图片描述
在这里插入图片描述

完整项目下载地址(电脑没有python环境)

电脑没有python环境或者觉得配置太麻烦可直接购买exe版本,只要有电脑就可以运行!!
QQ机器人基础版exe
QQ机器人多功能版exe
同样里面都有使用说明,配置更加方便(强烈推荐)!!

在这里插入图片描述
但是这也有一个坏处,就是不可编程修改,功能已经固定了,十分适合新手!!

个人主页(含在线语音对话机器人和一些有趣的功能):皮小孩的个人主页

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/134232.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • excel如何合并相同项单元格内容_不能对合并单元格部分更改

    excel如何合并相同项单元格内容_不能对合并单元格部分更改工作中可能想要快速的实现将Excel相同项目单元格合并,下面就跟大家简单地介绍一下。1.如下图F列中含有很多相同项,现在我们想要将这些相同项目单元格合并。2.首选我们选中F列数据单元格区域3.点击下图选项(Excel工具箱,百度即可了解详细下载安装信息,本文这里就不做详细解说。)4.然后选择【合并转换】,【合并相同单元格】5.勾选【列方向】6.最后点击【确定】即可完成7完成效果如下图所示

  • 台式电脑用网线可以上网,为什么把网线插到笔记本电脑上就连不上网的问题的解决

    台式电脑用网线可以上网,为什么把网线插到笔记本电脑上就连不上网的问题的解决那是笔记本网卡设置有问题。查看连接属性IP地址及DNS服务器是否是自动获得。然后修改成和台式机一样的为自动获得,即可让你的笔记本进入使用状态了!管理员在2009年8月13日编辑了该文章文章。–> –> window._bd_sh

  • FDD与TDD的区别

    FDD与TDD的区别LTE通常分为FDDLTE和TDDLTEFDD,频分双工(FrequencyDivisionDuplexing)我和你通信,像广播一样,只能我说你听,是单工;像对讲机一样,同一时间只能一方说,另一方听,就是半双工;如果双方可以同时说和听,就是全双工。TDD:收发共用一个射频频点,上、下行链路使用不同的时隙来进行通信FDD:收发使用不同的射频频点来进行通信…

  • CentOS 安装 tomcat 环境安装及配置过程完整版「建议收藏」

    CentOS 安装 tomcat 环境安装及配置过程完整版「建议收藏」CentOS安装tomcat环境安装及配置过程查看安装包信息yuminfotomcat安装yum-yinstalltomcat查看是否安装成功rpm-qtomcat输出:tomcat-7.0.76-16.el7_9.noarch表示安装成功。配置环境变量tomcat默认安装路径/usr/share/tomcat/加入环境变量配置在/etc/profile配置文件中加入Tomcat环境变量:JAVA_HOME=/usr/lib/jvm/ja

  • 1677个高频单词_3500高频词汇表

    1677个高频单词_3500高频词汇表给一非空的单词列表,返回前 k 个出现次数最多的单词。返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率,按字母顺序排序。示例 1:输入: [“i”, “love”, “leetcode”, “i”, “love”, “coding”], k = 2输出: [“i”, “love”]解析: “i” 和 “love” 为出现次数最多的两个单词,均为2次。 注意,按字母顺序 “i” 在 “love” 之前。 示例 2:输入: [“the”, “day”, “is

  • thinkphp开发微信公众号时,验证基本配置提示请求url超时

    thinkphp开发微信公众号时,验证基本配置提示请求url超时

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号