Tạo mã thông báo của nhà phát triển từ trang cấu hình ứng dụng của bạn [https. //ứng dụng. hộp. com/nhà phát triển/dịch vụ]
Bạn sẽ được nhắc về nó trên dòng lệnh
$ from boxsdk import DevelopmentClient $ client = DevelopmentClient[] >>> Enter developer token: $ me = client.user[].get[] GET //api.box.com/2.0/users/me {'headers': {u'Authorization': u'Bearer ----KkeV', u'User-Agent': u'box-python-sdk-1.4.3'}, 'params': None} {"type":"user","id":"----6009","name":"Jeffrey Meadows","login":"jmeadows@box.com",...} $ me.name >>> Jeffrey Meadows
DevelopmentClient
sử dụng mã thông báo của nhà phát triển Box để xác thực [và sẽ nhắc bạn nhập mã thông báo mới khi hết hạn], đồng thời ghi lại các yêu cầu và phản hồi API, giúp bạn bắt đầu tìm hiểu SDK và API Box thực sự dễ dàng
Tạo ứng dụng cho người dùng
ủy quyền
Nếu muốn người dùng khác sử dụng ứng dụng của mình, bạn cần thiết lập cách để họ ủy quyền cho ứng dụng của bạn và cấp cho ứng dụng quyền truy cập vào tài khoản Box của họ. Mô-đun auth
chứa một số lớp để giúp bạn làm điều đó
Lớp đơn giản nhất là lớp OAuth2
. Để sử dụng nó, hãy khởi tạo nó với client_id
và client_secret
của bạn
Làm theo hướng dẫn để có được ứng dụng khách được ủy quyền cho người dùng. Sử dụng lệnh gọi lại store_tokens
, bạn có thể duy trì mã xác thực và làm mới mã thông báo của người dùng cho lần tiếp theo họ sử dụng ứng dụng của bạn. Sau khi họ quay lại ứng dụng của bạn, bạn có thể tạo ứng dụng khách được ủy quyền như vậy
from boxsdk import OAuth2, Client oauth = OAuth2[ client_id='YOUR_CLIENT_ID', client_secret='YOUR_CLIENT_SECRET', store_tokens=your_store_tokens_callback_method, access_token=persisted_access_token, refresh_token=persisted_refresh_token, ] client = Client[oauth]
Yêu cầu Box
Sau khi có ứng dụng khách được ủy quyền, bạn có thể sử dụng ứng dụng đó để gửi yêu cầu tới Box thay mặt cho người dùng của mình. Máy khách có một số phương thức để giúp bạn bắt đầu, nhiều phương thức trong số đó trả về các đối tượng Box, do đó, các phương thức này có các phương thức tương ứng với các điểm cuối API Box
Tài liệu mô-đun bên dưới mô tả từng phương thức này và các tham số mà chúng yêu cầu. Một số điểm cuối API không có phương thức SDK tương ứng;
Máy khách Python để tương tác với modem/bộ định tuyến cáp Compal CH7465LG được cung cấp dưới nhiều tên khác nhau bởi nhiều ISP ở Châu Âu
Hộp kết nối UPC [CH]
Ailen Virgin Media Super Hub 3. 0 [TỨC LÀ]
Hộp kết nối Ziggo [NL]
Hộp kết nối Unitymedia [DE]
Mô-đun này không chính thức, được phát triển, hỗ trợ hoặc xác nhận bởi UPC, Unitymedia hoặc Compal
Có một giao diện cung cấp thông tin chi tiết về các trạng thái khác nhau như bảng thuê DHCP cho Ethernet và Wifi
Ethernet 2
192.168.0.160/24
0
2
GW-B072BF27A983
B0:72:BF:27:A9:83
1
00:00:34:53
...
connect_box đang xử lý việc truy xuất dữ liệu và phân tích cú pháp. Trường hợp sử dụng chính là trình theo dõi thiết bị upc_connect của Home Assistant nhưng người ta cũng có thể sử dụng nó trong các dự án khác
Cài đặt
Mô-đun có sẵn từ Chỉ mục gói Python
$ pip3 install connect_box
Trên hệ thống dựa trên Fedora hoặc trên máy CentOS/RHEL 8 đã bật EPEL
$ sudo dnf -y install python3-connect-box
Đối với Nix hoặc NixOS có sẵn mô-đun đóng gói sẵn. Bản phát hành mới nhất thường có trong kênh không ổn định
Các đối tượng tệp đại diện cho các tệp riêng lẻ trong Hộp. Chúng có thể được sử dụng để tải xuống nội dung của tệp, tải lên các phiên bản mới và thực hiện các thao tác tệp phổ biến khác [di chuyển, sao chép, xóa, v.v. ]
Lấy thông tin của một tập tin
Gọi một truy xuất thông tin về tệp từ API. Phương thức này trả về một đối tượng mới được điền với thông tin được lấy
Bạn có thể chỉ định một
file_id = '11111' # Write the Box file contents to disk with open['file.pdf', 'wb'] as output_file: client.file[file_id].download_to[output_file]8 trường để truy xuất từ API trong tham số
file_id = '11111' # Write the Box file contents to disk with open['file.pdf', 'wb'] as output_file: client.file[file_id].download_to[output_file]9
file_id = '11111' file_info = client.file[file_id].get[] print[f'File "{file_info.name}" has a size of {file_info.size} bytes']
Cập nhật thông tin của tệp
Để cập nhật các trường trên đối tượng, hãy gọi [
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']1][update_info] với
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 trường để cập nhật. Phương thức này trả về đối tượng được cập nhật, giữ nguyên bản gốc mà nó được gọi khi chưa sửa đổi
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]
Tải xuống một tệp
Một tệp có thể được tải xuống theo hai cách. bằng cách trả lại toàn bộ nội dung của tệp dưới dạng
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']4 hoặc bằng cách cung cấp luồng đầu ra mà nội dung của tệp sẽ được ghi vào đó. Đối với cả hai phương pháp, bạn có thể tùy ý tải xuống một phiên bản tệp cụ thể bằng cách chuyển phiên bản mong muốn vào tham số
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']6. Bạn cũng có thể chỉ muốn tải xuống một đoạn nhất định của tệp bằng cách chuyển một bộ giá trị byte qua tham số
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']7 — giới hạn dưới và trên mà bạn muốn tải xuống
Để lấy toàn bộ nội dung của tệp dưới dạng
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']4, hãy gọi
file_id = '11111' file_content = client.file[file_id].content[]
Đối với người dùng có tài khoản trả phí, có thể tải xuống các phiên bản trước của tệp
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]
Ngoài ra, chỉ có thể tải xuống một phần của tệp bằng cách chỉ định phạm vi byte
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]
Để tải nội dung tệp xuống luồng đầu ra, hãy gọi bằng luồng
file_id = '11111' # Write the Box file contents to disk with open['file.pdf', 'wb'] as output_file: client.file[file_id].download_to[output_file]
Nhận URL tải xuống
Để có URL tải xuống phù hợp để chuyển tới trình duyệt web hoặc ứng dụng khác, cho phép ai đó tải xuống tệp, hãy gọi. Sẽ trả về một chuỗi
folder_id = '22222' new_file = client.folder[folder_id].upload['/home/me/document.pdf'] print[f'File "{new_file.name}" uploaded to Box with file ID {new_file.id}']2 chứa URL tải xuống của tệp. Bạn có thể tùy ý chuyển a qua tham số
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']6 để nhận URL tải xuống cho một phiên bản cụ thể của tệp
________số 8_______
Tải lên một tài liệu
Các tệp được tải lên một thư mục theo một trong hai cách. bằng cách cung cấp đường dẫn đến tệp trên đĩa hoặc qua luồng có thể đọc được chứa nội dung tệp
Để tải tệp lên từ đường dẫn trên đĩa, hãy gọi phương thức trên đường dẫn bạn muốn tải tệp lên. Theo mặc định, tệp được tải lên Box sẽ có cùng tên tệp với tên trên đĩa; . Bạn cũng có thể tùy ý chọn đặt mô tả tệp khi tải lên bằng cách sử dụng tham số
folder_id = '22222' new_file = client.folder[folder_id].upload['/home/me/document.pdf'] print[f'File "{new_file.name}" uploaded to Box with file ID {new_file.id}']8. Phương thức này trả về một đối tượng đại diện cho tệp mới tải lên
folder_id = '22222' new_file = client.folder[folder_id].upload['/home/me/document.pdf'] print[f'File "{new_file.name}" uploaded to Box with file ID {new_file.id}']
Để tải tệp lên từ luồng có thể đọc được, hãy gọi bằng luồng và tên cho tệp. Phương thức này trả về một đối tượng đại diện cho tệp mới tải lên
file_name = 'file.pdf' stream = open['/path/to/file.pdf', 'rb'] folder_id = '22222' new_file = client.folder[folder_id].upload_stream[stream, file_name] print[f'File "{new_file.name}" uploaded to Box with file ID {new_file.id}']
Tải lên theo đoạn
Đối với các tệp lớn hoặc trong trường hợp kết nối mạng kém tin cậy hơn, bạn có thể muốn tải tệp lên thành nhiều phần. Điều này cho phép một phần bị lỗi mà không hủy bỏ toàn bộ quá trình tải lên và các phần bị lỗi sau đó có thể được thử lại
Trình tải lên tự động
Tải lên tệp mới
SDK cung cấp phương pháp tự động xử lý tải lên chunked. Trước tiên, hãy lấy một thư mục bạn muốn tải tệp lên. Sau đó gọi để lấy một đối tượng. Gọi phương thức sẽ khởi động quá trình tải lên chunked và trả về đối tượng đã được tải lên
# uploads large file to a root folder chunked_uploader = client.folder['0'].get_chunked_uploader[file_path='/path/to/file.txt', file_name='new_name.txt'] uploaded_file = chunked_uploader.start[] print[f'File "{uploaded_file.name}" uploaded to Box with file ID {uploaded_file.id}']
Bạn cũng có thể tải lên luồng tệp bằng cách tạo trước và sau đó gọi phương thức
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]0
Tải lên phiên bản tệp mới
Để tải lên phiên bản tệp mới cho tệp lớn, trước tiên hãy lấy tệp bạn muốn thay thế. Sau đó gọi để lấy một đối tượng. Việc gọi phương thức này sẽ bắt đầu quá trình tải lên chunked và trả về bản cập nhật
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]1
Kiểm tra sơ bộ trước khi tải lên
Để kiểm tra xem một tệp có thể được tải lên với tên đã cho vào một thư mục cụ thể hay không, hãy gọi. Nếu kiểm tra không vượt qua, phương pháp này sẽ đưa ra một ngoại lệ bao gồm một số chi tiết về lý do tại sao nó không vượt qua
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]2
Tiếp tục Tải lên
Đôi khi quá trình tải lên có thể bị gián đoạn, để tiếp tục tải lên ở nơi bạn đã dừng lần cuối, chỉ cần gọi phương thức. Điều này sẽ trả về đối tượng đã được tải lên
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]3
Ngoài ra, bạn cũng có thể tạo một đối tượng bằng cách gọi [
# uploads large file to a root folder chunked_uploader = client.folder['0'].get_chunked_uploader[file_path='/path/to/file.txt', file_name='new_name.txt'] uploaded_file = chunked_uploader.start[] print[f'File "{uploaded_file.name}" uploaded to Box with file ID {uploaded_file.id}']3][upload_session] nếu bạn có id phiên tải lên. Điều này có thể hữu ích trong việc tiếp tục phiên tải lên hiện tại
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]4
Hủy bỏ tải lên chunked
Để hủy bỏ quá trình tải lên đang chạy, hủy bỏ tất cả các khối hiện đang tải lên và hủy bỏ phiên tải lên, hãy gọi phương thức
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]5
Quy trình thủ công
Đối với các trường hợp tải lên phức tạp hơn, chẳng hạn như các trường hợp được phối hợp giữa nhiều quy trình hoặc khi xảy ra lỗi không thể khôi phục với trình tải lên tự động, các điểm cuối cho hoạt động tải lên phân đoạn cũng được hiển thị trực tiếp
Ví dụ: đây đại khái là cách tải lên chunked được thực hiện thủ công
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]6
Các phương pháp điểm cuối riêng lẻ được trình bày chi tiết bên dưới
Tạo phiên tải lên cho phiên bản tệp
Để tạo phiên tải lên để tải lên phiên bản lớn, hãy gọi với kích thước của tệp sẽ được tải lên. Bạn có thể tùy chọn chỉ định một
folder_id = '22222' new_file = client.folder[folder_id].upload['/home/me/document.pdf'] print[f'File "{new_file.name}" uploaded to Box with file ID {new_file.id}']7 mới để đổi tên tệp khi tải lên. Phương thức này trả về một đối tượng đại diện cho phiên tải lên đã tạo
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]7
Tạo phiên tải lên cho tệp
Để tạo phiên tải lên để tải lên một tệp lớn mới, hãy gọi với kích thước và tên tệp của tệp sẽ được tải lên. Phương thức này trả về một đối tượng đại diện cho phiên tải lên đã tạo
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]8
Tải lên một phần
Để tải một phần của tệp lên phiên này, hãy gọi với ____8_______4 sẽ được tải lên, độ lệch byte trong tệp [phải là bội số của phiên tải lên
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]02] và tổng kích thước của tệp được tải lên. Phương thức này trả về một
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 cho bản ghi bộ phận;
Ghi chú. Số byte được tải lên cho mỗi phần phải chính xác là
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]04, ngoại trừ phần cuối cùng [chỉ bao gồm số lượng byte còn lại trong tệp]
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]9
Phiên tải lên cam kết
Sau khi tải lên tất cả các phần của tệp, hãy cam kết phiên tải lên lên Box bằng cách gọi hàm băm SHA1 của toàn bộ tệp. Để đảm bảo tính nhất quán tốt nhất, bạn cũng nên chuyển một
file_id = '11111' # Write the Box file contents to disk with open['file.pdf', 'wb'] as output_file: client.file[file_id].download_to[output_file]8 trong số các phần
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 qua tham số
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]08; . Bạn cũng có thể vượt qua một
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 của
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]10 để thiết lập hồ sơ mới
file_id = '11111' file_content = client.file[file_id].content[]0
Hủy phiên tải lên
Để hủy tải lên chunked và mất tất cả các phần của tệp đã tải lên, hãy gọi. Phương thức này trả về
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]12 để cho biết rằng việc xóa đã thành công
file_id = '11111' file_content = client.file[file_id].content[]1
Liệt kê các bộ phận tải lên
Để trả lại danh sách các phần đã tải lên cho đến nay, hãy gọi. Phương thức này trả về một
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]14 cho phép bạn lặp lại phần
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 trong bộ sưu tập
file_id = '11111' file_content = client.file[file_id].content[]2
Di chuyển một tập tin
Để di chuyển tệp từ thư mục này sang thư mục khác, hãy gọi thư mục đích để di chuyển tệp vào. Bạn có thể tùy ý cung cấp tham số
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]17 để tự động đổi tên tệp trong trường hợp có xung đột tên trong thư mục đích. Phương thức này trả về đối tượng được cập nhật trong thư mục mới
file_id = '11111' file_content = client.file[file_id].content[]3
Sao chép một tập tin
Một tệp có thể được sao chép vào một thư mục mới bằng cách gọi thư mục đích và một tên mới tùy chọn cho tệp trong trường hợp có xung đột tên trong thư mục đích. Phương thức này trả về một đối tượng đại diện cho bản sao của tệp trong thư mục đích
file_id = '11111' file_content = client.file[file_id].content[]4
Đổi tên một tập tin
Một tập tin có thể được đổi tên bằng cách gọi. Phương thức này trả về đối tượng được cập nhật với tên mới. Hãy nhớ cung cấp cả phần mở rộng của tệp cùng với tên mới
file_id = '11111' file_content = client.file[file_id].content[]5
Xóa một tập tin
Gọi phương thức sẽ xóa tệp. Tùy thuộc vào cài đặt doanh nghiệp, thao tác này sẽ chuyển tệp vào thùng rác của người dùng hoặc xóa tệp vĩnh viễn. Phương thức này trả về
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]12 để biểu thị rằng việc xóa đã thành công
file_id = '11111' file_content = client.file[file_id].content[]6
Nhận các phiên bản trước của tệp
Các phiên bản trước của tệp có thể được truy xuất bằng phương thức. Phương thức này trả về một phương thức có thể lặp qua các đối tượng trong bộ sưu tập
file_id = '11111' file_content = client.file[file_id].content[]7
Tải lên phiên bản mới của tệp
Các phiên bản mới của tệp có thể được tải lên theo một trong hai cách. bằng cách cung cấp đường dẫn đến tệp trên đĩa hoặc qua luồng có thể đọc được chứa nội dung tệp
Để tải lên phiên bản tệp mới từ đường dẫn trên đĩa, hãy gọi phương thức. Phương thức này trả về một đối tượng đại diện cho tệp được cập nhật
file_id = '11111' file_content = client.file[file_id].content[]8
Để tải lên phiên bản tệp từ luồng có thể đọc được, hãy gọi bằng luồng. Phương thức này trả về một đối tượng đại diện cho tệp mới tải lên
file_id = '11111' file_content = client.file[file_id].content[]9
Quảng cáo Phiên bản trước của tệp
Phiên bản trước của tệp có thể được thăng cấp bằng cách gọi phương thức để trở thành phiên bản hiện tại của tệp với quảng cáo. Điều này tạo một bản sao của phiên bản tệp cũ và đặt nó lên trên cùng của ngăn xếp phiên bản. Phương thức này trả về đối tượng sao chép mới
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]0
Xóa phiên bản trước của tệp
Một phiên bản của tệp có thể bị xóa và chuyển vào thùng rác bằng cách gọi [
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']5] để xóa
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]1
Khóa một tập tin
Một tệp bị khóa không thể được sửa đổi bởi bất kỳ người dùng nào khác cho đến khi nó được mở khóa. Điều này hữu ích nếu bạn muốn "kiểm xuất" một tệp trong khi bạn đang làm việc với tệp đó, để đảm bảo rằng các cộng tác viên khác không thực hiện thay đổi trong khi các thay đổi của bạn đang diễn ra
Để khóa một tập tin, hãy gọi. Bạn có thể tùy chọn ngăn người dùng khác tải xuống tệp trong khi tệp bị khóa bằng cách chuyển
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]12 cho tham số
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]39. Bạn cũng có thể đặt thời gian hết hạn cho khóa, thời gian này sẽ tự động mở khóa vào thời điểm đã chỉ định. Thời gian hết hạn được định dạng là một
Phương thức này trả về đối tượng được cập nhật
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]2
Mở khóa một tệp
Một tập tin bị khóa có thể được mở khóa bằng cách gọi. Phương thức này trả về đối tượng được cập nhật
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]3
Tạo URL tải xuống liên kết được chia sẻ
Một liên kết được chia sẻ cho một tệp có thể được tạo bằng cách gọi. Phương thức này trả về một chuỗi
folder_id = '22222' new_file = client.folder[folder_id].upload['/home/me/document.pdf'] print[f'File "{new_file.name}" uploaded to Box with file ID {new_file.id}']2 chứa URL liên kết được chia sẻ
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]4
Tìm tệp cho một liên kết được chia sẻ
Để tìm một tệp được cung cấp một liên kết được chia sẻ, hãy sử dụng phương thức
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]5
Tạo hoặc cập nhật Liên kết được chia sẻ
Một liên kết được chia sẻ cho một tệp có thể được tạo hoặc cập nhật bằng cách gọi. Phương thức này trả về một chuỗi
folder_id = '22222' new_file = client.folder[folder_id].upload['/home/me/document.pdf'] print[f'File "{new_file.name}" uploaded to Box with file ID {new_file.id}']2 chứa URL liên kết được chia sẻ
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]6
Nhận một liên kết được chia sẻ
Để kiểm tra một liên kết được chia sẻ hiện có trên một tệp, chỉ cần gọi
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]48
Phương thức này trả về một chuỗi
folder_id = '22222' new_file = client.folder[folder_id].upload['/home/me/document.pdf'] print[f'File "{new_file.name}" uploaded to Box with file ID {new_file.id}']2 chứa URL liên kết được chia sẻ
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]7
Xóa liên kết được chia sẻ
Một liên kết được chia sẻ cho một tệp có thể bị xóa bằng cách gọi
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]8
Nhận một liên kết nhúng
Có thể tạo URL nhúng tệp bằng cách gọi. Phương thức này trả về một chuỗi
folder_id = '22222' new_file = client.folder[folder_id].upload['/home/me/document.pdf'] print[f'File "{new_file.name}" uploaded to Box with file ID {new_file.id}']2 chứa một URL phù hợp để nhúng vào một
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]53 để nhúng trình xem tệp vào một trang web
file_id = '11111' file_version = client.file_version['12345'] version_content = client.file[file_id].content[file_version=file_version]9
Nhận đại diện tệp
Để có được các biểu diễn xem trước của một tệp, hãy gọi phương thức bằng cách tìm nạp - nếu không có gợi ý nào được cung cấp, thông tin hạn chế về tất cả các biểu diễn có sẵn sẽ được trả về. Phương thức này trả về một
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]55 của
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2s chứa thông tin về các biểu diễn được yêu cầu
Lưu ý rằng phương pháp này chỉ cung cấp thông tin về một tập hợp các biểu diễn có sẵn;
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]0
Nhận hình thu nhỏ [Không dùng nữa]
Một hình thu nhỏ cho một tập tin có thể được lấy ra bằng cách gọi. Phương thức này trả về
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']4 của hình ảnh thu nhỏ
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]1
Nhận hình thu nhỏ
Bây giờ có thể truy xuất hình thu nhỏ cho một tệp bằng cách gọi. Phương thức này trả về
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']4 của hình ảnh thu nhỏ. Bạn phải chuyển vào một thứ nguyên hợp lệ cho phần mở rộng mà bạn chuyển vào cho tệp này. Để tìm thứ nguyên hợp lệ, trước tiên bạn phải thực hiện cuộc gọi với [
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]54]. Điều này sẽ trả về một
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 của tất cả các biểu diễn có sẵn với các phần mở rộng và kích thước của chúng. Bạn có thể tìm thêm thông tin chi tiết về tài liệu dành cho nhà phát triển của chúng tôi tại đây
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]2
Đặt siêu dữ liệu
Để đặt siêu dữ liệu trên một tệp, hãy gọi để chỉ định phạm vi và khóa mẫu của mẫu siêu dữ liệu cần đính kèm. Sau đó, gọi phương thức [
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]64][metadata_set] với các cặp khóa/giá trị cần đính kèm. Phương thức này trả về một
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 chứa phiên bản siêu dữ liệu được áp dụng
Ghi chú. Phương pháp này sẽ áp dụng vô điều kiện siêu dữ liệu được cung cấp, ghi đè siêu dữ liệu hiện có cho các khóa được cung cấp. Để tạo hoặc cập nhật siêu dữ liệu một cách cụ thể, hãy xem các phương pháp
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]66 hoặc
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]67
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]3
Siêu dữ liệu có thể được thêm vào tệp dưới dạng cặp khóa/giá trị dạng tự do hoặc từ mẫu hiện có. Để thêm siêu dữ liệu vào một tệp, trước tiên hãy gọi để chỉ định phạm vi và khóa mẫu của mẫu siêu dữ liệu cần đính kèm [hoặc sử dụng các giá trị mặc định để đính kèm các khóa và giá trị dạng tự do]. Sau đó, gọi với các cặp khóa/giá trị để đính kèm. Phương pháp này chỉ có thể được sử dụng để đính kèm một mẫu siêu dữ liệu đã cho vào tệp lần đầu tiên và trả về một
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 chứa phiên bản siêu dữ liệu được áp dụng
Ghi chú. Phương pháp này sẽ chỉ thành công nếu mẫu siêu dữ liệu đã cung cấp hiện không được áp dụng cho tệp, nếu không, phương pháp này sẽ không thành công với lỗi Xung đột
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]4
Việc cập nhật các giá trị siêu dữ liệu được thực hiện thông qua một loạt các hoạt động riêng biệt, được áp dụng nguyên tử đối với siêu dữ liệu tệp hiện có. Đầu tiên, chỉ định siêu dữ liệu nào sẽ được cập nhật bằng cách gọi. Sau đó, bắt đầu trình tự cập nhật bằng cách gọi và thêm các thao tác cập nhật vào tệp được trả về. Cuối cùng, thực hiện cập nhật bằng cách gọi. Phương thức cuối cùng này trả về một
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 của phiên bản siêu dữ liệu được cập nhật
Ghi chú. Phương pháp này sẽ chỉ thành công nếu mẫu siêu dữ liệu được cung cấp đã được áp dụng cho tệp; . Điều này hữu ích nếu bạn biết rằng tệp đã được áp dụng siêu dữ liệu, vì nó sẽ lưu lệnh gọi API so với
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]76
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]5
Nhận siêu dữ liệu
Để truy xuất phiên bản siêu dữ liệu trên một tệp cho một mẫu siêu dữ liệu cụ thể, trước tiên hãy gọi để chỉ định phạm vi và khóa mẫu của mẫu siêu dữ liệu cần truy xuất, sau đó gọi để truy xuất các giá trị siêu dữ liệu được đính kèm với tệp. Phương thức này trả về một
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 chứa phiên bản siêu dữ liệu được áp dụng
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]6
Xóa siêu dữ liệu
Để xóa một phiên bản siêu dữ liệu khỏi tệp, hãy gọi để chỉ định phạm vi và khóa mẫu của mẫu siêu dữ liệu cần xóa, sau đó gọi để xóa siêu dữ liệu khỏi tệp. Phương thức này trả về
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]12 để cho biết rằng việc xóa đã thành công
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]7
Nhận tất cả siêu dữ liệu
Để truy xuất tất cả siêu dữ liệu được đính kèm vào một tệp, hãy gọi. Phương thức này trả về một giá trị có thể được sử dụng để lặp lại trong các
file_id = '11111' download_url = client.file[file_id].get_download_url[] print[f'The file\'s download URL is: {download_url}']2 đại diện cho từng phiên bản siêu dữ liệu được đính kèm với tệp
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]8
Đặt phân loại
Điều quan trọng cần lưu ý là tính năng này chỉ khả dụng nếu bạn có Quản trị
Để thêm phân loại vào một , hãy gọi. Phương thức này trả về kiểu phân loại trên đối tượng. Nếu một phân loại đã tồn tại thì cuộc gọi này sẽ cập nhật phân loại hiện có với phân loại mới
file_id = '11111' beginning_of_file_content = client.file[file_id].content[byte_range=[0,99]]9
Phương thức thiết lập sẽ luôn hoạt động bất kể trạng thái của bạn đang ở đâu. Đối với các trường hợp đã tồn tại giá trị phân loại có thể thực hiện nhiều lệnh gọi API
Ngoài ra, nếu bạn đã biết mình có một phân loại và bạn chỉ cần cập nhật nó, bạn có thể sử dụng. Điều này cuối cùng sẽ giúp bạn tiết kiệm thêm một lệnh gọi API
file_id = '11111' # Write the Box file contents to disk with open['file.pdf', 'wb'] as output_file: client.file[file_id].download_to[output_file]0
Lấy một phân loại
Để truy xuất phân loại từ a, hãy gọi. Phương thức này trả về kiểu phân loại trên đối tượng
file_id = '11111' # Write the Box file contents to disk with open['file.pdf', 'wb'] as output_file: client.file[file_id].download_to[output_file]1
Xóa phân loại
Để xóa phân loại khỏi a, hãy gọi
file_id = '11111' # Write the Box file contents to disk with open['file.pdf', 'wb'] as output_file: client.file[file_id].download_to[output_file]2
Đặt ngày hết hạn chính sách lưu giữ
Để đặt ngày hết hạn chính sách lưu giữ mới cho tệp, hãy gọi. Phương pháp này sẽ chỉ hoạt động đối với các tệp đang được lưu giữ với bộ hành động xử lý
file_id = '11111' updated_file = client.file[file_id].update_info[data={'description': 'My file'}]99. Hãy nhớ rằng không thể rút ngắn ngày xử lý sau khi đã đặt trên một tệp. Là tham số
file_id = '11111' file_content = client.file[file_id].content[]00, bạn có thể sử dụng chuỗi ngày giờ, e. g. '2035-03-04T10. 14. 24+14. 00' hoặc
file_id = '11111' file_content = client.file[file_id].content[]01 đối tượng
file_id = '11111' # Write the Box file contents to disk with open['file.pdf', 'wb'] as output_file: client.file[file_id].download_to[output_file]3
Nếu đối tượng
file_id = '11111' file_content = client.file[file_id].content[]01 không có múi giờ được chỉ định, thì múi giờ địa phương sẽ được sử dụng. Để có được ngày xử lý hiện tại, bạn có thể sử dụng đoạn mã bên dưới