{ 聊天机器人 }

  • 从零开始微信机器人(四):监控机器人程序

    | /

    由于使用网页版微信,机器人往往不能够永远地在线。如果无法一直在线,也就失去了自动回复程序的意义。在此,我们使用两种方式来监控机器人程序:

    1. 自动定时发送消息
    2. 使用supervisor进行监控

    自动发送消息

    准备

    如果需要定时发送消息,使用sleep方式来等待计时会阻塞线程,因此我们会使用threading来进行多线程的操作。把一个线程分配给自动给特定人发送微信消息。

    定义自动发送消息的方法

    在进行多线程操作之前,我们先定义一个自动发送消息的方法以备调用:

    1
    2
    3
    4
    5
    def send_online_notification(name):
    my_friend = ensure_one(bot.search(name))
    while True:
    my_friend.send('Hello!') # 你想发送的消息
    time.sleep(3600) # 一小时后在进行发送

    wxpy的ensure_one()方法会确认返回的内容仅有一个值,如果返回的列表超过一个值(或是没有返回),它会进行报错。我们在这里寻找name相关的好友,并且保证只有一个这样的好友。如果你需要给多个好友发送消息,我建议再使用一个循环来遍历好友列表。

  • 从零开始微信机器人(三):表情机器人的制作

    | /

    本篇的诞生来自于一朋友制作的表情机器人。当时觉得十分有趣,也希望加入到群聊机器人中,因此就向他讨要了源代码并制作了表情功能。在此我也再次感谢吴毅凡同学的协助!

    准备工作

    由于需要读取网页内容,本文中由于我个人偏好使用xpath来选择网页中元素,使用了lxml包,安装的话需要:

    1
    pip install lxml

    如果你想要使用BeautifulSoup来处理网页,请安装:

    1
    pip install beautifulsoup4
  • 从零开始微信机器人(二):使用图灵机器人和api.ai相关接口

    | /

    图灵机器人相关接口

    图灵机器人是一个中文语境下的对话机器人,免费的机器人每天有5000次调用的,如果放在群聊中是完全够用的(如果只有@的消息才使用机器人回复的)。图灵机器人也包括一些简单的能力,比如讲笑话、故事大全、成语接龙、新闻资讯等,我们将介绍如何简单调用图灵机器人接口。

    前期准备

    1. 前往注册图灵机器人,增加一个机器人,并记录机器人的APIKey。具体注册方法可以前往图灵API查看。(如果你觉得很麻烦, 也可以暂时使用itchat提供的几个key

    2. 安装Requests: HTTP for Humans

      1
      2
      # 从 pip 安装 ()
      pip install requests

      并在机器人中导入Requests包(写在程序最初):

      1
      import requests
  • 从零开始微信机器人(一):wxpy简介

    | /

    在过去的几个月中,由于在新生群中回答问题费时费力,同时又有许多重复而又有固定答案的回答,我受到一些知乎文章的启发,维护了一个基于itchat的群聊机器人。从刚开始接入图灵机器人时只会尬聊的机器人,之后又加入了api.ai的按照消息内容自动回复,而后再加入了回复表情功能,使得机器人变得越来越有趣。

    现在,由于itchat的更新和被wxpy一些更有趣的功能所吸引,我计划将这个机器人分步重写,并将完整的机器人构建步骤展现给大家。这是我第一次做这样的事,有诸多不足之处,也希望多多谅解和指正。