zoukankan      html  css  js  c++  java
  • python作业/练习/实战:下载QQ群所有人的头像

    步骤与提示:
    1、在腾讯群网页中进入任意一个群,获取相关信息,可以用postman是试一下,可以看到我们要的是mems里面的数据,需要获取到QQ号和群名片,如果没有群名片的话取昵称
    2、根据QQ号下载头像,图片名称为群昵称。

    import requests
    url='https://qun.qq.com/cgi-bin/qun_mgr/search_group_members'
    headers={'cookie':'pt2gguin=o0511402865; RK=JQZpwBp1by; ptcz=6c30e26a9ed6be93d3de9e4c4aca3e55650cf99fcffa64729bd1d58a5fb209d9; pgv_pvi=779236352; pgv_pvid=6970909788; qb_qua=; qb_guid=818de686e29d412fa4ee9e99905ea166; Q-H5-GUID=818de686e29d412fa4ee9e99905ea166; NetType=; pgv_si=s8948704256; uin=o0511402865; skey=@4qrz3B37F; ptisp=cnc; p_uin=o0511402865; pt4_token=UEDJ1b7Mj5a2UdO21KAFwRhg3X*MQ--1ZLvEazYW8zE_; p_skey=MOjeaK1kxuqa6dFa4vq-RdlkG*cyaQ39i-Ju7HQfpf8_'}
    data = {"gc":6346xx327,'st':0,'end':100,'sort':0,'bkn':3090xx635}
    
    req=requests.post(url, data=data, headers=headers, verify=False)#发请求
    # print(req.json())#发请求看一下
    
    mems=req.json().get('mems') #获取所有学生信息,是一个list
    # print(mems)# 打印看一下
    
    for mem in mems:#取名称
        file_name = mem.get('card') if mem.get('card') else mem.get("nick")#三元表达式,取群名片,如果没有就取昵称
        # res=值1 if 条件 else 值2,复制变量的时候,直接加上判断,然后复制赋值
    
    
        qq_num=mem.get('uin')#取QQ号
        img_url='https://q4.qlogo.cn/g?b=qq&nk=%s&s=140'%qq_num#取每个QQ号的头像
        img_content=requests.get(img_url).content#下载头像,content返回二进制文件
    
        with open(file_name+'.jpg','wb') as fw:#保存头像,图片用群昵称作为名字
            fw.write(img_content)
  • 相关阅读:
    python读取数据写入excel
    English Study!
    ODOO里视图开发案例---定义一个像tree、form一样的视图
    更改gradle中央仓库,加快访问速度
    hadoop解决集群启动时某个slave的datanode挂掉问题
    ssh免密登录
    大数据集群脚本xcall和xsync
    虚拟机启动后黑屏并无法关闭
    快照与克隆的区别(来自转载)
    VMware12 打不开Centos6.8系统
  • 原文地址:https://www.cnblogs.com/haifeima/p/9962772.html
Copyright © 2011-2022 走看看