第三方程序使用Onedrive内sharepoint文件夹的快捷方式时的访问与下载

Ringwil Chan 0 信誉分
2025-06-26T01:14:35.5866667+00:00

在onedrive添加了公司的sharepoint某个库的快捷方式;

这台电脑上vscode运行python脚本时,在未使用sharepoint api连接的情况下,直接开始下载sharepoint这个库下的内容,onedrive提示xxxx正在下载内容;

在我不记得点击了哪个弹窗选项之后,再运行同样的程序时,不会再自动下载了,转而报错OSError: [Errno 22] Invalid argument,这应该是因为此时没有从onedrive下载文件到本地;

但是从头至尾,此python脚本都可以获得此快捷方式指向的目录的文件/文件夹列表。

程序代码:

检查PDF文件附件

def extract_attachments_from_pdf(path):
    # 打开PDF文件------
    with open(path, 'rb') as f:
        try:
            reader = PyPDF2.PdfReader(f)
            # 获取PDF的对象
            catalog = reader.trailer['/Root']
            # 查找嵌入文件的对象
            if '/Names' in catalog:
                names = catalog['/Names']
                if '/EmbeddedFiles' in names:
                    embedded_files = names['/EmbeddedFiles']
                    # 提取附件的文件名
                    files = embedded_files['/Names']
                    attachments = [files[i] for i in range(0, len(files), 2)]
                    return attachments
        except Exception as e:
                return f"提取附件失败: {e}"
    return "No attachments"

path = C:\Users\XXXX\OneDrive - XX****PANY, INC\XXXX\Files\XXXX.pdf

请帮我解答第一次运行时,开始下载文件到本地的背后的原理,比如身份认证,因为vscode登录的microsoft账号非我公司的账号;

以及是否有某处设定可以关闭和开启这种情况下的自动下载文件到本地;

Microsoft 365 和 Office | SharePoint 服务器 | 商业版
0 个注释 无注释

你的答案

提问者可以将答案标记为“已接受”,审查方可以将答案标记为“已推荐”,这有助于用户了解答案是否解决了提问者的问题。