![](/img/trans.png)
[英]How to upload file with custom metadata in GCS bucket using REST API in Python
[英]how to upload file to SharePoint with Metadata using Python Rest API
我正在尝试使用 Python REST ZDB974238714CA8DE634ACE 将文件上传到 SharePoint 站点。 我可以成功地将文件上传到 SharePoint 站点,但是,我不确定,如何添加元数据以显示在站点下的列中。
示例:我正在上传 TEST.pdf 以及
metadata {"name" : "TEST.pdf", "Owner": "Mumbai", "TimeStamp": "3Aug2022 12:12", "pages": 34}
以下是将文件上传到 sharepoint 站点的代码。
from office365.runtime.auth.user_credential import UserCredential
from office365.sharepoint.client_context import ClientContext
from concurrent.futures import ThreadPoolExecutor, as_completed
def get_sharepoint_context_using_user():
# Get sharepoint credentials
sharepoint_url = "https:/{sitename}.sharepoint.com/sites/TEST"
# Initialize the client credentials
user_credentials = UserCredential("username", "password")
# create client context object
ctx = ClientContext(sharepoint_url).with_credentials(user_credentials)
return ctx
def upload_to_sharepoint(dir_name: str, file_name: str):
# sp_relative_url = create_sharepoint_directory(dir_name)
ctx = get_sharepoint_context_using_user()
target_folder = ctx.web.get_folder_by_server_relative_url(
"test")
with open(file_name, 'rb') as content_file:
file_content = content_file.read()
target_folder.upload_file(file_name, file_content).execute_query()
print(upload_to_sharepoint('test', "TEST.pdf"))
我需要根据元数据创建列。
我指的是下面的 github 链接,但没有找到合适的例子。 https://github.com/vgrem/Office365-REST-Python-Client/tree/master/examples/sharepoint
经过几天努力阅读 API 文档,终于找到了解决方案。 这将有助于任何工作的 Python SharePoint API。
data = {"name" : "TEST.pdf", "Owner": "Mumbai", "TimeStamp": "3Aug2022 12:12", "pages": 34}
ctx = get_sharepoint_context_using_user()
list_items = ctx.web.lists.get_by_title(
config.SHAREPOINT_LIBRARY_NAME,
)
items = list_items .items.get().execute_query()
for item in items:
for k, v in data.items():
item.set_property(k, v).update().execute_query()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.