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免费提供,那么就会被开发的第三方应用取代了.

相关推荐
心软且酷丶9 分钟前
leetcode:2899. 上一个遍历的整数(python3解法)
python·算法·leetcode
Light6021 分钟前
Python依赖注入完全指南:高效解耦、技术深析与实践落地
python·设计模式·单元测试·fastapi·依赖注入·解耦
odoo中国41 分钟前
Python 深度学习 第8章 计算机视觉中的深度学习 - 卷积神经网络使用实例
python·深度学习·计算机视觉·卷积神经网络
仙人掌_lz1 小时前
详解如何复现LLaMA 4:从零开始利用Python构建
人工智能·python·ai·llama·智能体·ai agents
一个天蝎座 白勺 程序猿1 小时前
Python(19)Python并发编程:深入解析多线程与多进程的差异及锁机制实战
开发语言·python
星辰大海的精灵1 小时前
微信客服小助手 python接入
后端·python
友恒写实2 小时前
Python面试官:你来解释一下协程的实现原理
后端·python
苏牧keio2 小时前
3 Python语法快速入门(基础篇)
python
hx_long3 小时前
centos7 安装miniconda
python·conda
这里有鱼汤3 小时前
退退退,Python 调试的科学方法,让你高效改 Bug
python