前几天在知乎上看到有人用图灵提供的api实现了微信聊天机器人,本人也跟风之下做了一个,用时1天半,
制作微信聊天机器人,需要如下几个条件,
1:web微信通讯协议,和各路接口
2:机器人接口

微信web版的模拟登陆和各个接口我是没有时间去研究,不过刚好在github上看到了一个别人做好的框架,就拿下来用了
地址:https://github.com/liuwons/wxBot
下载之后,直接放到lib目录下就好了,
这里多说一下,如果你出现%1 这不是标准的win32程序,而且是出在xml.dom下面的话,可以试着换一种方式来完成,在wxbot.pyde login函数里面本人是换成了lxml库的方式来替换那段代码,

        self.skey = doc.xpath(u'//skey')[0].textprint self.skeyself.sid = doc.xpath(u'//wxsid')[0].textprint self.sidself.uin = doc.xpath(u'//wxuin')[0].textprint self.uinself.pass_ticket = doc.xpath(u'//pass_ticket')[0].textprint self.pass_ticket

这段代码就是从下载下来的xml文件中读取相应的数据。
然后运行wxbot文件下的test.py大概就可以完成了
这个库相应的解析在github上面有,自己去看吧,
接下来就是聊天机器人了,
图灵机器人的官网是:http://www.tuling123.com/login.htm?loginRedirectUrl=%2Fweb%2Frobot_access%21index.action%3Fcur%3Dl_05
我是用qq登陆的,你看着办。
登陆之后在仪表盘-机器人接入-可以看到你的apikey,那个就是在向图灵post的时候所需要的
因为我选择的是python所以只能是api接入了,下载后面的文档,可以看到他教你怎么获取图灵的数据,
下面是一段解析和下载图灵的代码

class TuLin(object):'''classdocs'''def __init__(self):'''Constructor'''self.Url = "http://www.tuling123.com/openapi/api"self.template = "?key=APIKEY&info=content"self.ApiKey = self.getKey()self.postObjecturl = ''self.returnforTulin = ''''''''self.textCate = 100000self.linkCate = 200000self.newCate = 302000self.cookbookCate = 308000def filter(self,text):return text.replace(u'图灵机器人',u'小超',1)def analysisreturnforTulininJson(self,textjson):returninfodict = simplejson.loads(textjson)returnToWechatText = self.combin(returninfodict)return self.filter(returnToWechatText)def combin(self,dictinfor):if dictinfor['code']==self.textCate:return self.textinfo(dictinfor)if dictinfor['code'] == self.linkCate:return self.linkinfo(dictinfor)if dictinfor['code'] == self.newCate:return self.newinfo(dictinfor)if dictinfor['code'] == self.cookbookCate:return self.cookinfo(dictinfor)def textinfo(self,dict):return dict['text']def linkinfo(self,dict):return dict['text']+'\n'+dict['url']def newinfo(self,dict):text = ''text= text + dict['text']+'\n'for newdict in dict['list']:text = text + newdict['article']+'\n'text = text + newdict['source']+'\n'text = text + newdict['detailurl']+'\n'text = text+'-----------------------\n'return textdef cookinfo(self,dict):text = ''text= text + dict['text']cookdict = dict['list']text = text + cookdict['name']+'\n'text = text + cookdict['icon']+'\n'text = text + cookdict['info']+'\n'text = text + cookdict['detailurl']+'\n'text = text+'-----------------------\n'return textdef getReturnText(self):return self.analysisreturnforTulininJson(self.returnforTulin)def sendTextToTuLin(self,text):self.postObjecturl = self.Url + self.template.replace('APIKEY',self.ApiKey,1).replace('content',text,1)self.returnforTulin = self.getSourceforHtml(self.postObjecturl.decode('utf-8'))def getKey(self):fkey = open('APIKEY','r')apikey = fkey.read() fkey.close()return apikeydef getSourceforHtml(self,PostUrl):return requests.post(PostUrl).content

在外面只需要set一次,然后get可以得到解析好的数据了,
再照着wxbot框架的方法,接收到数据之后set给图灵,之后get数据,就好了
so,大致的流程就是这样子的了,
如果遇到什么别的问题可以在下面回复哦,
谢谢观看,

python 微信机器人之图灵相关推荐

  1. Python 微信机器人:属于自己的微信机器人制作,简单易懂。图灵机器人接口api调用

    首先你需要安装 itchat 库. 进入 cmd,先直接 pip install itchat 就好了. 我调的是图灵机器人的接口,可以了解一下: 图灵机器人的注册,图灵机器人api获取方式 微信机器 ...

  2. python 微信机器人_Python 微信机器人

    一.写在前边的话 如何做一个自动回复的微信机器人?机器人的功能有,自动加好友,关键字回复,等等,它甚至可以成为你的私人管家,只要你的代码到位.今天,主要讲解下,微信机器人-图灵版. 二.准备 1.py ...

  3. python 微信机器人教程_Python实现微信机器人的方法

    最近在学python的过程中无意间发现一个python库:wxpy,其可以实现让微信自动接收.处理消息并进行回复的一系列功能.感觉挺有意思的,便自行摸索学习,并成功地实现了其功能. 当我们打开微信,就 ...

  4. python 微信机器人教程_Python创建微信机器人(附赠Python视频教程)

    微信,一个日活10亿的超级app,不仅在国内社交独领风骚,在国外社交也同样占有一席之地.今天我们要讲的便是如何用Python来做一个微信聊天机器人,突然想起鲁迅先生曾经说过的一句话: 因为是微信机器人 ...

  5. 会聊天、提醒、撩妹的Python微信机器人你肯定没见过

    阅读文本大概需要 6 分钟. 看过 pk 哥之前的文章的小伙伴知道,pk 哥写过关于微信机器人的文章(用 Python 玩微信,机器人陪你唠嗑)和定时给心仪的伙伴发送早安或者祝福语录(Python 教 ...

  6. python 微信机器人,微信自动回复

    使用python现成的模块 itchat,可以实现,微信机器人的自动回复 其内部原理,是模拟了web版微信的登录,然后进行消息的接收发送,并不是只能用python实现,其他后端语言都可以做到 下面是使 ...

  7. python微信机器人库_Python微信机器人

    1.需要用到的模块: requests:Requests 是用 Itchat:itchat是一个开源的微信个人号接口,使用python调用微信从未如此简单. 使用不到三十行的代码,你就可以完成一个能够 ...

  8. Python 微信机器人

    1.微信库选择 python关于开发微信的库主要有itchat和wxpy,而wxpy底层是调用的itchat,所以如果你只是要使用的话建议使用wxpy库,它比其他的库都要优雅,更面向对象,而且深度整合 ...

  9. python微信机器人部署服务器_玩法收藏/云服务器/零基础微信机器人实践( Python )...

    最近想做个微信机器人,主要是为了个人方便.在腾云阁发现这个教程,得到了一些启发.(修改转载已取得腾讯云授权) 技术路径和实现思路 首先编程语言使用了 Python , Python 语法简洁.第三方扩 ...

最新文章

  1. Java调用js方法
  2. 一条insert语句导致的性能问题分析(一)
  3. 在主窗体中打开一个新子窗体,如果已有子窗体,则激活它,而不打开新的。...
  4. vnc oracle solaris,在Solaris下安装VNC 远程安装Oracle
  5. centos mysql jar 驱动包_JDBC连接MySQL的数据库
  6. 怎样练习一万小时(转)
  7. 在LUA中使用异步IO的思考
  8. 解析OA系统易用性的价值和意义
  9. python运行中更改代码_运行时更改python源代码
  10. 油猴(Tampermonkey)使用教程
  11. Hadoop 学习笔记(三)常用命令
  12. win 7 安装python 失败 提示Service Pack 1
  13. AirFlow的Scheduling的start_date解释
  14. ECharts地图使用
  15. ClassName::class
  16. 中国儿童乐园行业市场建设现状分析与营销策略研究报告2022版
  17. 人工智能与神经生理学:差异为何重要
  18. 联想创投大数据基于开源技术 助力全球智能制造
  19. uniapp 封装固定表头、固定列表格
  20. 地图大量数据查询与渲染——bug及解决方案

热门文章

  1. FTP上传文件 名称中文乱码问题
  2. JNDI(Java Naming and Directory Interface,Java命名和目录接口)
  3. FlappyBird开发总结(七)—— GameOver计分板
  4. Redis 之 WRONGTYPE Operation against a key holding the wrong kind of value【bug解决】
  5. HTTP状态 500 - 内部服务器错误:No converter found for return value of type: class xxx(简单分析及解决)
  6. mysql 张三的语文成绩_mysql的增删改查(列子)
  7. $children与$parent
  8. egret php交互,egret 发送HTTP请求
  9. 黄光CdTe碲化镉量子点(基团:氨基)
  10. AbstractInterceptor和MethodFilterInterceptor的区别