Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 使用python获取sharepoint目录中的文件列表_Python 2.7_Rest_Sharepoint 2013 - Fatal编程技术网

Python 2.7 使用python获取sharepoint目录中的文件列表

Python 2.7 使用python获取sharepoint目录中的文件列表,python-2.7,rest,sharepoint-2013,Python 2.7,Rest,Sharepoint 2013,我有一个sharepoint目录(intranet)的url,需要一个api来返回给定url的目录中的文件列表。如何使用python实现这一点 我有一个sharepoint目录的url 假设您询问某个库,您可以使用SharePoint的REST API并对以下对象进行web服务调用: https://yourServer/sites/yourSite/_api/web/lists/getbytitle('Documents')/items?$select=Title 这将返回以下位置的文档列表

我有一个sharepoint目录(intranet)的url,需要一个api来返回给定url的目录中的文件列表。如何使用python实现这一点

我有一个sharepoint目录的url

假设您询问某个库,您可以使用SharePoint的REST API并对以下对象进行web服务调用:

https://yourServer/sites/yourSite/_api/web/lists/getbytitle('Documents')/items?$select=Title
这将返回以下位置的文档列表:

见:


当然,您需要适当的权限/凭据才能访问该库。

您需要在此处执行两项操作

  • 在中获取文件列表(可以是目录或简单文件) 你感兴趣的目录
  • 循环此文件列表中的每个项目,并检查 该项是一个文件或目录。对于每个目录,执行与相同的操作 步骤1和2
  • 您可以在以下网址找到更多文档:

    希望这有帮助。

    您不能在SharePoint REST api中使用“服务器名称/站点/文件夹名称/子文件夹名称/_api/web/List/getbytitle('Documents')/items?$select=Title”作为URL

    考虑到WebSiteURL是包含您试图从中获取文件的文档库的站点/子站点的URL,文档是文档库的显示名称,URL结构应如下所示:

    WebSiteURL/_api/web/lists/getbytitle('Documents')/items?$select=Title
    
    如果要列出元数据字段值,应该在$select中添加以逗号分隔的字段名


    快速提示:如果您不确定RESTAPI URL的形成。尝试在Chrome浏览器中粘贴URL(您必须以适当的权限登录到SharePoint网站),并查看是否以XML形式获得正确的结果。如果成功,请更新REST URL并运行代码。这样可以节省运行python代码的时间。

    嗨,迈克,谢谢你的回复,我在服务器上有很多文件夹,每个文件夹都有子文件夹,每个子文件夹都有文件。我想列出给定文件夹名和子文件夹名的文件名及其元数据。我尝试了下面的URL,但它导致了错误-“URL超过了最大重试次数:。name/sites/Folder name/Subfolder name/_api/web/list/getbytitle('Documents')/items?$select=title我正在使用“请求”模块向服务器发送get请求。请推荐一个更好的模块来获取子文件夹中的文档列表,给定服务器中的文件夹和子文件夹名称。我尝试了URL:server name/sites/folder name/subfolder name/_-api/web/lists/getbytitle(“文档”)/items?$select=Title但没有用处。您可以使用python库提供的简单http.server来做到这一点,它会自动列出当前目录中的所有内容
    WebSiteURL/_api/web/lists/getbytitle('Documents')/items?$select=Title