Board logo

标题: [技术讨论] Python图灵机器人 for 微信 [打印本页]

作者: ivor    时间: 2017-12-25 10:39     标题: Python图灵机器人 for 微信

先命令安装pip install itchat
  1. #coding=utf8
  2. import requests
  3. import itchat
  4. #演示用key,改成自己的更稳定
  5. KEY = '8edce3ce905a4c1dbb965e6b35c3834d'
  6. def get_response(msg):
  7.     # 这里我们就像在“3. 实现最简单的与图灵机器人的交互”中做的一样
  8.     # 构造了要发送给服务器的数据
  9.     apiUrl = 'http://www.tuling123.com/openapi/api'
  10.     data = {
  11.         'key'    : KEY,
  12.         'info'   : msg,
  13.         'userid' : 'wechat-robot',
  14.     }
  15.     try:
  16.         r = requests.post(apiUrl, data=data).json()
  17.         # 字典的get方法在字典没有'text'值的时候会返回None而不会抛出异常
  18.         print(r.get('text'))
  19.         if r.get('code') == 100000:
  20.             return r.get('text')
  21.         if r.get('code') == 200000:
  22.             return "%s \n %s" % (r.get('text') , r.get('url'))
  23.         return
  24.     # 为了防止服务器没有正常响应导致程序异常退出,这里用try-except捕获了异常
  25.     # 如果服务器没能正常交互(返回非json或无法连接),那么就会进入下面的return
  26.     except:
  27.         # 将会返回一个None
  28.         return
  29. # 这里是我们在“1. 实现微信消息的获取”中已经用到过的同样的注册方法
  30. @itchat.msg_register(itchat.content.TEXT)
  31. def tuling_reply(msg):
  32.     # 如果图灵Key出现问题,那么reply将会是None
  33.     reply =  get_response(msg['Text'])
  34.     # 有内容一般就是指非空或者非None,你可以用`if a: print('True')`来测试
  35.     return "秘书:" + reply
  36. # 为了让实验过程更加方便(修改程序不用多次扫码),我们使用热启动
  37. itchat.auto_login(hotReload=True)
  38. itchat.run()
复制代码

作者: kaze    时间: 2020-5-16 17:54

请问这个现在还能用吗?能成功扫码登陆吗?具体怎么用
作者: kaze    时间: 2020-5-31 10:09

为什么不理我
作者: ivor    时间: 2020-5-31 11:38

时间比较久远,主要 itchat 可能被微信封掉了。你可以下载之后测试嘛
  1. pip install itchat
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2