Python 获取企业微信中微盘的文件列表

先说结论:企微api暂不支持获取微盘文件列表功能,且未来也不大可能支持.

过程:

一,首先按惯例,获取token

复制代码
import requests
def get_access_token(corpid, corpsecret):
    url = f"https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={corpid}&corpsecret={corpsecret}"
    response = requests.get(url)
    data = response.json()
    return data.get('access_token')

怎么从企微中找到corpid, corpsecret,自行搜索

这一步顺顺利利,可以连接成功

二,我尝试去拿文件列表,脚本如下

复制代码
def get_file_message(access_token):
    url = f"https://qyapi.weixin.qq.com/cgi-bin/wedrive/file_list?access_token={access_token}"
    data = {
        "spaceid": "s.1970325736989685.663049851sLo",
        "fatherid": "s.1970325736989685.663049851sLo",
        "sort_type": 1,
        "start": 0,
        "limit": 100
    }
    response = requests.post(url, json=data)
    return response.json()

怎么在企微中找到spaceid,也请自行搜索,我是用F12找到的

问题就出现在这一步,pycharm提示

{'errcode': 640008, 'errmsg': 'permision deny, hint: [1722830197123491071289534], from ip: 121.8.91.234, more info at https://open.work.weixin.qq.com/devtool/query?e=640008'}

进程已结束,退出代码为 0

点击错误提示的链接,显示如下图

说什么没有空间权限,WTF~

怎么会没有权限呢?我可是超级管理员呀,于是利用我的超级管理员权限在企微管理后台各种找各种设置无果,求助企微客服,老实了

企微官方技术支持-九九的解释进一步理解就是:

① 支持API创建微盘空间, 但不能以userid的身份创建,而是要以应用的身份创建,配置如下

②支持API上传文件,但是不支持用户上传文件,就算是管理员,也只能下载/预览文件

③支持API获取文件列表,但是仅支持获取API创建的空间的文件列表,而不支持用户在微盘客户端创建的空间, 所以才会有前文的报错:没有空间权限.

思考:为什么企业微信不提供此类api

微盘属于企微的收费服务之一,价格不菲(200元/人/年),如果api免费提供,那么就会被开发的第三方应用取代了.

相关推荐
AI_Claude_code11 小时前
网络基础回顾:DNS、IP封锁与HTTP/S协议关键点
网络·爬虫·python·tcp/ip·http·爬山算法·安全架构
架构师老Y11 小时前
012、缓存架构设计:Redis高级应用与优化
redis·python·架构
Thomas.Sir11 小时前
AI 医疗之重症监护预警系统(ICU-EWS)从理论到实战【时序深度学习与多模态融合】
人工智能·python·深度学习·ai·多模态
gogogo出发喽11 小时前
flask vue
python
zhaoshuzhaoshu11 小时前
设计模式之结构型设计模式详解
python·设计模式
斯班奇的好朋友阿法法11 小时前
Django 3.2 项目:从 Hello World 开始(完整功能版)
python·django
架构师老Y11 小时前
010:API网关调试手记:路由、认证与限流的那些坑
开发语言·前端·python
老刘说AI11 小时前
Dify:从入门到精通
人工智能·python·神经网络·低代码·ai作画·开源软件
zhangzeyuaaa11 小时前
Python 闭包详解
开发语言·python
万粉变现经纪人11 小时前
如何解决 pip install tensorflow-gpu 报错 未检测到 CUDA 驱动 问题
人工智能·python·深度学习·aigc·tensorflow·bug·pip