如何用30行代码,打造一个微信群聊助手

作者: 代码君_Coder | 来源:发表于2018-01-16 21:40 被阅读194次

    哈喽,大家好,我是代码君,好久没发干货啦~会不会被大家吐槽呀

    大家都知道,最近代码君迷上了Python,一直在研究这门语言,还是那句话,人生苦短,我学Python,今天代码君要教大家一个黑科技,30行代码实现自己定制的微信群聊助手,这个助手有什么用呐,就是用来活跃气氛的,好多群主创建完群后,拉完一群人,之后就一片寂静,有个群聊助手,就可以帮忙活跃群里气氛,这是代码君在自己群里的测试,效果还可以


    WechatIMG840.jpeg

    好了,言归正传,代码君开始教大家如何定制自己的微信群聊助手

    准备

    1. Python开发环境

      由于代码君用的是mac,mac自带python开发环境,所以不需要安装,window请自行到python官网下载安装,这个比较简单就不写教程了,mac打开终端输入python,可以查看当前python版本号 image.png
    2. 安装Python库itchat
      在终端输入下面代码,安装itchat库

    pip install itchat
    
    1. 申请图灵机器人API的key
      这个你只要去图灵机器人官网注册一下就可以获取免费的key,当然免费的会有部分限制,不过用于我们测试玩,完全够用

    微信聊天助手的实现

    import itchat
    import requests
    
    def get_response(msg):
        apiUrl = 'http://www.tuling123.com/openapi/api'
        data = {
            'key': '8edce3ce905a4c1dbb965e6b35c3834d',  # Tuling Key
            'info': msg,  # 这是我们发出去的消息
            'userid': 'wechat-robot',  # 这里你想改什么都可以
        }
        # 我们通过如下命令发送一个post请求
        r = requests.post(apiUrl, data=data).json()
        return r.get('text')
    
    @itchat.msg_register(itchat.content.TEXT)
    def print_content(msg):
        return get_response(msg['Text'])
    
    @itchat.msg_register([itchat.content.TEXT], isGroupChat=True)
    def print_content(msg):
        return get_response(msg['Text'])
    
    itchat.auto_login(True)
    itchat.run()
    

    看完代码,读者们是不是惊呆了,如果你真感兴趣,可以数一下,连30行代码都没有到呦,这也许就是Python的魅力吧,用极简的代码,就实现了我们想要的功能,这里讲解一下代码吧

    1. 用到两个库,一个itchat,一个requests,如果你import itchat 没用出异常,也说明你之前安装itchat库成功啦,requests是网络请求库,python自带的,用于调用图灵机器人API
    2. @itchat.msg_register(itchat.content.TEXT):用于接收来自朋友间的对话消息
    3. @itchat.msg_register([itchat.content.TEXT], isGroupChat=True):用于接收群里面的对话消息
    4. 实现原理也很简单,接受到信息,调用get_response()方法,把消息传给图灵机器人,然后接收的回复信息再返回给微信,大致是这个原理
    5. 最后是登录接口的调用,执行itchat.auto_login(),执行的python代码,会弹出一个登录二维码,类似网页端的扫码登录,你扫码登录后,就会由机器人替你处理朋友以及群里发来的消息啦,当然,如果不希望机器处理,你退出网页端的登录即可
    6. 执行代码

    总结

    这个库的功能还有很多,这里代码君只是做简单的介绍而已,其实,大家发挥一下你们的聪明才智,会发现,这个可以有很多想象的空间,

    1. 很多淘宝客估计也是基于这个原理,根据用户输入的词,机器人可以推荐对应的商品,这里代码君之前有搞过一次,公众号《淘甄货》原理就是基于此,大家可以去体验一下
    2. 群助手,不光可以聊天,还可以监听一些其他的呀,只不过代码君没对信息做处理,比如群里有人发广告信息之类的,你就可以调用删除群成员接口,这样就给群里创造一个好的环境体验,当然你得是群主才有这个权限
    3. 代码君还看到itchat的API,可以获取微信里面关注的公众号信息,我想那些刷粉丝量的黑产应该是基于此,哈哈,我好像发现了一个发家致富的途径,好啦,我能想到的用途就这几个,剩下的就交给广大的读者去脑洞大开啦,发财了别忘记回来给代码君打赏一下~

    建了一个Python技术交流群,想入群的读者请加微信

    Python入群.png

    相关文章

      网友评论

        本文标题:如何用30行代码,打造一个微信群聊助手

        本文链接:https://www.haomeiwen.com/subject/sazvnxtx.html