如何用Python导出SharePoint列表到CSV?遇SSL证书验证错误求助
你碰到的这个SSL证书验证错误,多半是因为你的SharePoint服务器用的是自签名证书,或者证书没被Python的系统信任库认可。下面给你两种实用的解决办法:
方法1:临时禁用SSL验证(仅测试环境用)
这种方法见效最快,但绝对别在生产环境用,会有安全风险。你可以通过修改Python的SSL上下文来跳过证书验证:
在代码开头添加这段内容:
import ssl # 临时关闭SSL证书验证 ssl._create_default_https_context = ssl._create_unverified_context
把这段代码放在导入sharepoint模块之前,修改后的完整代码示例:
import ssl # 临时禁用SSL验证 ssl._create_default_https_context = ssl._create_unverified_context from sharepoint import SharePointSite, basic_auth_opener server_url = "https://sps16.com/sites/Url/" site_url = server_url + "/_vti_bin/Lists.asmx?wsdl" opener = basic_auth_opener(server_url, "domain\\username", "password") site = SharePointSite(site_url, opener) for sp_list in site.lists: print(sp_list.id, sp_list.meta['2016 App Scan'])
方法2:添加信任证书到Python信任库(生产环境推荐)
如果是正式环境,建议把SharePoint的证书加入Python的信任列表:
- 第一步:导出SharePoint网站的SSL证书——用浏览器打开网站,点击地址栏的锁图标,查看证书并导出为
.crt格式文件 - 第二步:找到Python的证书存储路径,比如Windows下通常是
Python安装目录\Lib\site-packages\certifi\cacert.pem - 第三步:用文本编辑器打开
cacert.pem,把你导出的证书内容粘贴到文件末尾,保存即可
这样Python就会信任该证书,不会再出现验证失败的问题了。
内容的提问来源于stack exchange,提问作者user9551424
相关产品推荐
相关产品推荐

