Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.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 400从sharepoint rest api下载文件时出错_Python_Rest_Sharepoint_Sharepoint 2010 - Fatal编程技术网

Python 400从sharepoint rest api下载文件时出错

Python 400从sharepoint rest api下载文件时出错,python,rest,sharepoint,sharepoint-2010,Python,Rest,Sharepoint,Sharepoint 2010,我正在尝试使用Python通过RESTAPI从sharepoint下载文件。这是我的密码: import requests from requests_ntlm import HttpNtlmAuth req = requests.get("http://sharepoint/sites/publishing/sales/_api/web/getfilebyserverrelativeurl('\Documents\Folder\data_04202015.csv')",auth=HttpNt

我正在尝试使用Python通过RESTAPI从sharepoint下载文件。这是我的密码:

import requests
from requests_ntlm import HttpNtlmAuth

req = requests.get("http://sharepoint/sites/publishing/sales/_api/web/getfilebyserverrelativeurl('\Documents\Folder\data_04202015.csv')",auth=HttpNtlmAuth('domain\\username','password'))
print req.status_code

如果请求的url为“”,则返回代码为200,但在尝试使用GetFileByServerRelativeUrl时,它将返回400。

最后,我可以使用

文件路径如下所示:

请注意,如果您试图访问文件夹下的文件,则必须从/sites/…指定路径根

from sharepoint import SharePointSite, basic_auth_opener
import urllib2
from ntlm import HTTPNtlmAuthHandler

user = 'domain\username'
password = "password"

server_url = "http://sharepoint/"
site_url = server_url + "sites/publishing/sales/"

passman = urllib2.HTTPPasswordMgrWithDefaultRealm()
passman.add_password(None, site_url, user, password)
auth_NTLM = HTTPNtlmAuthHandler.HTTPNtlmAuthHandler(passman)

opener = urllib2.build_opener(auth_NTLM)
urllib2.install_opener(opener)

site = SharePointSite(site_url, opener)

salesList = site.lists['Sales Distribution']

fileList = salesList.get_rows(folder='/sites/publishing/sales/Sales_Distribution/Data')

print "================================="

url = fileList[5].as_dict()['EncodedAbsUrl']
file = fileList[5].open()

content = urllib2.urlopen(url)
print content.read()

我不知道,但您需要指定驱动器吗?a、 k.a.
C:
。如果没有,我很好奇为什么?@sirpasselot我们不需要指定驱动器。。。它就像一个网络主机。。