📜  如何在Python使用 Dropbox API 自动化存储?

📅  最后修改于: 2022-05-13 01:54:49.842000             🧑  作者: Mango

如何在Python使用 Dropbox API 自动化存储?

在这个数据时代,存储、管理和组织数据是每个企业都考虑的重要因素。 Dropbox 是市场上最受欢迎的云存储系统之一,并且还在不断改进其功能。在本文中,我们将演示如何使用Python连接到 Dropbox API 并有效地执行存储自动化。

获取连接到 Dropbox 的密钥

  •  转到 https://www.dropbox.com/developers/apps/create 您将看到这样的页面。选择“Scoped Access”选项,然后在第 2 步中选择“Full Dropbox”,使用任何重要名称命名您的应用程序。

  • 在 Oauth2 部分,将访问令牌过期设置为“无过期”,生成一个访问令牌。

  • 转到权限选项卡,选择所需的适当权限,然后单击提交。

  • 通过以上步骤生成的令牌密钥,我们可以使用此令牌连接到保管箱并执行存储自动化。您可以使用以下命令安装Python库:
pip install dropbox 

生成令牌的演示视频:



使用令牌密钥连接到 Dropbox:

使用生成的令牌连接到 Dropbox 并创建一个对象。

Python3
# importing necessary libraries
import dropbox
  
# Token Generated from dropbox
TOKEN = "access_token"
  
# Establish connection
def connect_to_dropbox():
    
    try:
        dbx = dropbox.Dropbox(TOKEN)
        print('Connected to Dropbox successfully')
      
    except Exception as e:
        print(str(e))
      
    return dbx
  
dbx = connect_to_dropbox()


Python3
# explicit function to list files
def list_files_in_folder():
    
    # here dbx is an object which is obtained
    # by connecting to dropbox via token
    dbx = connect_to_dropbox()
      
    try:
        folder_path = "/folder_path"
  
        # dbx object contains all functions that 
        # are required to perform actions with dropbox
        files = dbx.files_list_folder(folder_path).entries
        print("------------Listing Files in Folder------------ ")
          
        for file in files:
              
            # listing
            print(file.name)
              
    except Exception as e:
        print(str(e))
  
list_files_in_folder()


输出:

Connected to Dropbox successfully

我们已成功连接到 Dropbox。我们现在可以列出文件夹/文件、读取文件、上传文件、删除文件等。

列出文件夹中的文件

首先,调用上面的方法来连接并创建一个 dropbox 对象,然后为要扫描的文件夹分配一个路径,然后使用 file_list_folder() 方法和循环遍历旧的。

蟒蛇3

# explicit function to list files
def list_files_in_folder():
    
    # here dbx is an object which is obtained
    # by connecting to dropbox via token
    dbx = connect_to_dropbox()
      
    try:
        folder_path = "/folder_path"
  
        # dbx object contains all functions that 
        # are required to perform actions with dropbox
        files = dbx.files_list_folder(folder_path).entries
        print("------------Listing Files in Folder------------ ")
          
        for file in files:
              
            # listing
            print(file.name)
              
    except Exception as e:
        print(str(e))
  
list_files_in_folder()

输出:

现在我们已经使用Python成功连接到 dropbox,列出了其中的文件夹。