使用 Dropbox ApiError 从共享 Dropbox 下载文件
Download File From Shared Dropbox Using Dropbox ApiError
我想下载共享保管箱文件夹中的 CSV 文件。我目前给我的代码是ApiError
。完整代码和错误如下:
我的代码:
import dropbox
ACCESS_TOKEN = '***MY ACCESS_TOKEN***'
dbx = dropbox.Dropbox(ACCESS_TOKEN)
url = "https://www.dropbox.com/sh/s8vwbg46zjsg3rw/AAC0T1BhIgfp5BfH_sJ_Vnb1a?dl=0"
file = "https://www.dropbox.com/sh/s8vwbg46zjsg3rw/AAC0T1BhIgfp5BfH_sJ_Vnb1a?dl=0&preview=Stock+List+2021-03-08.csv"
md, res = dbx.sharing_get_shared_link_file(url=file)
print(md)
print(res)
错误:
Traceback (most recent call last):
File "D:\***\PyCharm\Furniture\Test 1\dropbox_test.py", line 10, in <module>
md, res = dbx.sharing_get_shared_link_file(url=file)
File "C:\Python39\lib\site-packages\dropbox\base.py", line 4181, in sharing_get_shared_link_file
r = self.request(
File "C:\Python39\lib\site-packages\dropbox\dropbox_client.py", line 346, in request
raise ApiError(res.request_id,
dropbox.exceptions.ApiError: ApiError('90075839f9f94c53a112a48692314d4f', GetSharedLinkFileError('shared_link_is_directory', None))
任何帮助都会很棒。我也试过 files_download
,但我也遇到了错误。
“https://www.dropbox.com/sh/s8vwbg46zjsg3rw/AAC0T1BhIgfp5BfH_sJ_Vnb1a?dl=0...”link 本身指向一个文件夹,而不是一个特定的文件(无论您是否上面有 preview
参数。
您可以通过以下两种方式完成这项工作:
- 在
sharing_get_shared_link_file
上提供 path
参数以指定所需文件夹中的文件:
md, res = dbx.sharing_get_shared_link_file(url=url, path="/Stock List 2021-03-08.csv")
- 将实际的 link 特别用于文件(我通过共享 link 页面手动检索):
file = "https://www.dropbox.com/sh/s8vwbg46zjsg3rw/AABhEIN92e98iufhllgVuIvga/Stock%20List%202021-03-08.csv?dl=0"
md, res = dbx.sharing_get_shared_link_file(url=file)
此外,如果该文件位于您正在使用的访问令牌的连接帐户中,您当然应该能够使用 files_download
下载它。如果您愿意,请随时打开另一个问题并提供该问题的详细信息。
我想下载共享保管箱文件夹中的 CSV 文件。我目前给我的代码是ApiError
。完整代码和错误如下:
我的代码:
import dropbox
ACCESS_TOKEN = '***MY ACCESS_TOKEN***'
dbx = dropbox.Dropbox(ACCESS_TOKEN)
url = "https://www.dropbox.com/sh/s8vwbg46zjsg3rw/AAC0T1BhIgfp5BfH_sJ_Vnb1a?dl=0"
file = "https://www.dropbox.com/sh/s8vwbg46zjsg3rw/AAC0T1BhIgfp5BfH_sJ_Vnb1a?dl=0&preview=Stock+List+2021-03-08.csv"
md, res = dbx.sharing_get_shared_link_file(url=file)
print(md)
print(res)
错误:
Traceback (most recent call last):
File "D:\***\PyCharm\Furniture\Test 1\dropbox_test.py", line 10, in <module>
md, res = dbx.sharing_get_shared_link_file(url=file)
File "C:\Python39\lib\site-packages\dropbox\base.py", line 4181, in sharing_get_shared_link_file
r = self.request(
File "C:\Python39\lib\site-packages\dropbox\dropbox_client.py", line 346, in request
raise ApiError(res.request_id,
dropbox.exceptions.ApiError: ApiError('90075839f9f94c53a112a48692314d4f', GetSharedLinkFileError('shared_link_is_directory', None))
任何帮助都会很棒。我也试过 files_download
,但我也遇到了错误。
“https://www.dropbox.com/sh/s8vwbg46zjsg3rw/AAC0T1BhIgfp5BfH_sJ_Vnb1a?dl=0...”link 本身指向一个文件夹,而不是一个特定的文件(无论您是否上面有 preview
参数。
您可以通过以下两种方式完成这项工作:
- 在
sharing_get_shared_link_file
上提供path
参数以指定所需文件夹中的文件:
md, res = dbx.sharing_get_shared_link_file(url=url, path="/Stock List 2021-03-08.csv")
- 将实际的 link 特别用于文件(我通过共享 link 页面手动检索):
file = "https://www.dropbox.com/sh/s8vwbg46zjsg3rw/AABhEIN92e98iufhllgVuIvga/Stock%20List%202021-03-08.csv?dl=0"
md, res = dbx.sharing_get_shared_link_file(url=file)
此外,如果该文件位于您正在使用的访问令牌的连接帐户中,您当然应该能够使用 files_download
下载它。如果您愿意,请随时打开另一个问题并提供该问题的详细信息。