You need to enable JavaScript to run this app. 如何使用Python将文件上传至pCloud指定文件夹
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python将文件上传至pCloud指定文件夹

pCloud Python端上传文件到指定文件夹的实现方法

很多人使用pcloud第三方库时发现uploadfile方法没有直观的路径参数,其实是因为接口的目标位置定位逻辑和常规文件操作不同——它不接受路径字符串作为入参,只通过数字格式的文件夹ID定位目标目录,具体实现步骤如下:

  • 第一步:获取目标文件夹的数字ID
    要上传到指定文件夹,首先需要拿到pCloud云端对应目录的唯一数字标识,有两种常用获取方式:

    1. 逐层遍历获取:调用listfolder接口,传入folderid=0代表从云端根目录开始遍历,匹配对应文件夹名称拿到ID。如果目标文件夹是多层嵌套的,就拿到上一层的文件夹ID后,再次调用listfolder遍历下一级内容,直到定位到最终目标目录:
      # 获取根目录内容
      root_resp = pc.listfolder(folderid=0)
      # 示例:定位根目录下名为"照片备份"的文件夹ID
      target_folder = next(
          item for item in root_resp["metadata"]["contents"]
          if item["isfolder"] and item["name"] == "照片备份"
      )
      target_folder_id = target_folder["folderid"]
      
    2. 直接按路径查询:如果知道目标文件夹的完整云端路径,可以直接调用getfolderid接口一次性拿到对应ID,不需要逐层遍历:
      # 示例:查询云端路径为"/照片备份/2024旅行"的文件夹ID
      folder_resp = pc.getfolderid(path="/照片备份/2024旅行")
      target_folder_id = folder_resp["metadata"]["folderid"]
      
  • 第二步:调用uploadfile时传入目标文件夹ID
    拿到目标文件夹的数字ID后,在uploadfile方法调用时新增folderid入参即可指定上传位置,修改后的完整调用示例:

    from pcloud import PyCloud
    
    pc = PyCloud('username','password')
    
    # 先拿到目标文件夹的id
    folder_resp = pc.getfolderid(path="/目标文件夹路径")
    target_id = folder_resp["metadata"]["folderid"]
    
    # 上传文件到指定文件夹
    pc.uploadfile(files = ['pics\\img.png'], folderid=target_id)
    

常见注意事项:

  • 不要尝试传入类似destination="/目标路径"的参数,接口本身没有这个入参,传了也不会生效
  • 拿到的folderid是纯数字值,不要把文件夹名称当参数传入
  • 同一次调用里可以同时传多个本地文件路径,所有文件都会被上传到指定的folderid对应的目录下

内容的提问来源于stack exchange,提问作者Masih Eshraghi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.11 16:15:10