前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于python版微信使用经验分享

关于python版微信使用经验分享

作者头像
FunTester
发布2019-07-31 11:51:42
1.1K0
发布2019-07-31 11:51:42
举报
文章被收录于专栏:FunTesterFunTester

本人最近在使用python版的微信做了一些模拟操作,使用的wxpy封装好的框架api,聊天机器人接入的是图灵,其他的暂时还没有功能的接入计划。

在实施的过程中遇到了很多问题,大部分是微信api过时导致了,因为本身调用的是web微信的api,我看到git上的项目已经最近的更新时间是2017年,中间很多次微信的api调整都没更新到,比如添加好友,比如被@检测等等。

今天分享一下自己的使用经验和一些自己的封装方法:

朋友列表和群列表,因为会自动同步最近活跃的群,所以如果新添加的群需要重新获取一下groups。api提供了一个search的搜索方法,使用起来稍微麻烦一些,我换了一种思路,直接下标获取好友和群。方法如下:

代码语言:javascript
复制
def fslist():
    fs= bot.friends()
    a = 0
    for i in fs:
        print a
        a +=1
        print i
def gslist():
    gs= bot.groups()
    a = 0
    for i in gs:
        print a
        a +=1
        print i

直接可以通过元素索引角标直接获取元素。

撤回消息。这个我只是对原来的recall()方法做了简单封装,这里也见识了python的简洁性。主要是在调试模式中使用。

代码语言:javascript
复制
def re(*msg):
    if not msg  == ():
        ms=bot.messages.search(msg)[-1]
        ms.recall()
    else:
        ms=bot.messages[-1]
        ms.recall()
    print ms

发送图片文件,主要也是在调试模式中使用

代码语言:javascript
复制
def sendpic(user,name):
    user.send_image('/Users/Vicky/Downloads/'+name)
    print user
    print "发送了图片"+name

聊天机器人对话,本人接的图灵的,接入方法请参照[python微信+requests+图灵机器人制作聊天机器人](/blog/article/利用python wxpy和requests写一个自动应答微信机器人实例.html),我这里只写一个封装过后的方法,方便调用。现在图灵已经砍掉了免费用户使用。

代码语言:javascript
复制
def getTulingReplay(msg,friend):
    userid = ""
    if friend in fs:
        userid = fs.index(friend)
    if friend in gs:
        userid = gs.index(friend)
    j = dict(
            reqType=0,
            perception=dict(
                inputText=dict(
                    text=msg
                    )
                ),
            userInfo=dict(
                apiKey="***",
                userId=userid
                )
            )
    r = requests.post("http://openapi.tuling123.com/openapi/api/v2",json=j)
    info = json.loads(r.text)["results"]
    c = info[0]["values"]
    d = c.keys()
    m = c[d[0]]
    print m
    friend.send(m)

保存聊天记录。这个原需求是想整理一下群聊天记录,还有那些撤回的,现在做分析用。只存本地,尚未清洗数据到数据库。只有文本信息。

由于某些web API已经不用了,所以在使用当中会遇到一些问题,可参考web端的网页功能。

点击阅读原文,有兴趣的童鞋可以一起交流,另外求粉求关注。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FunTester 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档