python操作QQ

编程知识 更新时间:2023-05-03 03:33:37

1.介绍

想通过python控制qq消息的定时自动发送,目前发现通过酷q社区大神开发的酷QhttpAPI 可以完美的实现各种语言基于web对qq调用。

2.工具和环境

工具:酷Q--我用的图灵版,httpAPIcdk下载以及api描述

环境: python3和windows

3.操作过程

安装酷q打开开发者模式,

把cdk应用文件放到app目录下,并启动该应用。

查阅api文档,通过python的requests库调用api即可。

下面是我实现给个人和定时所有群发送消息的代码

import requests
import schedule
#localIp = '192.168.0.106'
localIp = 'localhost'
def SendPrivateMsg(qq,msg,PlainText=False):
    funcname = 'send_private_msg'
    url = "http://" + localIp + ":5700/" + funcname
    params = {
        'user_id': qq,
        'message': msg,
        'auto_escape':PlainText
    }
    req = requests.get(url=url,params=params)
    print(req.status_code)
#酷Q表情CQ码获取方法:1,百度 2,主动发送给qq,从日志中提取
def GetCQFaceId(face):
    FaceDict = {
        '拜拜':39,
        '吓':110
    }
    return FaceDict[face]
def GetGroupList():
    url = "http://"+localIp+":5700/get_group_list"
    req = requests.get(url=url)
    print(req.status_code)
    resDict = req.json()
    #print(resDict)
    grouplists = [];
    for val in resDict['data']:
        print("group id is : {},group name is :{}".format(val['group_id'],val['group_name']))
        grouplists.append(val['group_id'])
    return grouplists
def SendGroupMsg(groupid,msg,PlainText=False):
    funcname = 'send_group_msg'
    url = "http://"+localIp+":5700/"+funcname
    params = {
        'group_id': groupid,
        'message': msg,
        'auto_escape': PlainText
    }
    req = requests.get(url=url,params=params)
    print(req.content)
    print('send group [{}] : {}'.format(groupid,req.status_code))
def SendGroupsMsg():
    groupslists = GetGroupList()
    if len(groupslists):
        for val in groupslists:
            r = SendGroupMsg(val, "[CQ:face,id={}]".format(GetCQFaceId("拜拜")))
            print(r)
        pass
    else:
        print("no group")
    pass
if __name__ == '__main__':
    #SendPrivateMsg(1220462431,"[CQ:face,id={}]".format(GetCQFaceId("拜拜")))
    schedule.every(10).seconds.do(SendGroupsMsg)
    while True:
        schedule.run_pending()
        import time
        time.sleep(1)

 

更多推荐

python操作QQ

本文发布于:2023-04-30 09:57:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/95747e4fd8939df2979f1e2b36976579.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:操作   python   QQ

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 113914文章数
  • 28879阅读数
  • 0评论数