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

相关推荐
清水白石0087 分钟前
解构异步编程的两种哲学:从 asyncio 到 Trio,理解 Nursery 的魔力
运维·服务器·数据库·python
山海青风11 分钟前
图像识别零基础实战入门 1 计算机如何“看”一张图片
图像处理·python
彼岸花开了吗40 分钟前
构建AI智能体:八十、SVD知识整理与降维:从数据混沌到语义秩序的智能转换
人工智能·python·llm
山土成旧客1 小时前
【Python学习打卡-Day40】从“能跑就行”到“工程标准”:PyTorch训练与测试的规范化写法
pytorch·python·学习
闲人编程1 小时前
消息通知系统实现:构建高可用、可扩展的企业级通知服务
java·服务器·网络·python·消息队列·异步处理·分发器
大神君Bob1 小时前
【AI办公自动化】如何使用Pytho让Excel表格处理自动化
python
Heorine1 小时前
数学建模 绘图 图表 可视化(6)
python·数学建模·数据可视化
栈与堆1 小时前
LeetCode-1-两数之和
java·数据结构·后端·python·算法·leetcode·rust
智航GIS2 小时前
10.7 pyspider 库入门
开发语言·前端·python
副露のmagic2 小时前
更弱智的算法学习 day25
python·学习·算法