首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UploadWriteFailed(reason=WriteError('disallowed_name',无)

UploadWriteFailed(reason=WriteError('disallowed_name',无)
EN

Stack Overflow用户
提问于 2017-10-07 11:18:40
回答 1查看 517关注 0票数 0

我试图上传一个完整的文件夹到dropbox,但只有文件被上传。我应该通过编程创建一个文件夹,还是可以解决这个文件夹-上传这么简单?谢谢

代码语言:javascript
复制
   import os
   import dropbox

   access_token = '***********************'

   dbx = dropbox.Dropbox(access_token)

   dropbox_destination = '/live'
   local_directory = 'C:/Users/xoxo/Desktop/man'

   for root, dirs, files in os.walk(local_directory):

       for filename in files:
           local_path = root + '/' + filename
           print("local_path", local_path)
           relative_path = os.path.relpath(local_path, local_directory)
           dropbox_path = dropbox_destination + '/' + relative_path

           # upload the file
           with open(local_path, 'rb') as f:
               dbx.files_upload(f.read(), dropbox_path)

错误:

代码语言:javascript
复制
dropbox.exceptions.ApiError: ApiError('xxf84e5axxf86', UploadError('path', UploadWriteFailed(reason=WriteError('disallowed_name', None), upload_session_id='xxxxxxxxxxx')))
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-09 15:48:36

[交联参考:https://www.dropboxforum.com/t5/API-support/UploadWriteFailed-reason-WriteError-disallowed-name-None/td-p/245765 ]

这里有几件事要注意:

  • 在您的示例中,您只是在files上迭代,所以不会上传/创建dirs
  • /2/文件/上载端点只接受文件上载,而不接受文件夹。如果要创建文件夹,请使用v2。但是,您不需要为path中的任何父文件夹显式地为您通过/2/文件/上载上传的文件创建文件夹。这些将自动创建与上传。
  • 根据/2/档案/上载文件disallowed_name的意思是:

Dropbox将不会保存文件或文件夹,因为它的名称。

所以,很可能是因为你想上传一个被忽略的文件,比如".DS_STORE",所以你会收到这个错误。您可以在这篇帮助文章位于“忽略的文件”下。中找到更多有关这些信息的信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46619550

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档