首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从sharepoint下载文件时出错400

从sharepoint下载文件时出错400
EN

Stack Overflow用户
提问于 2015-06-30 14:33:07
回答 1查看 6.5K关注 0票数 3

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

代码语言:javascript
运行
复制
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为"api/web“,则返回代码为200 ok,但在尝试使用GetFileByServerRelativeUrl时,它将返回400。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-30 19:14:16

最后,我可以使用sharepoint库访问这些文件。

文件路径类似于:分布/数据/记录

请注意,如果要访问文件夹下的文件,必须指定/site/.的路径根。

代码语言:javascript
运行
复制
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()
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31141188

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档