找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 17400|回复: 3

[技术讨论] Python图灵机器人 for 微信

[复制链接]
发表于 2017-12-25 10:39:01 | 显示全部楼层 |阅读模式
先命令安装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()
复制代码

评分

参与人数 2技术 +2 收起 理由
老刘1号 + 1 感谢分享
bbaa + 1 前排围观

查看全部评分

发表于 2020-5-16 17:54:31 | 显示全部楼层
请问这个现在还能用吗?能成功扫码登陆吗?具体怎么用
发表于 2020-5-31 10:09:39 | 显示全部楼层
为什么不理我
 楼主| 发表于 2020-5-31 11:38:28 | 显示全部楼层
时间比较久远,主要 itchat 可能被微信封掉了。你可以下载之后测试嘛
  1. pip install itchat
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 01:12 , Processed in 0.018951 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表