将Python NTLM XML响应写入本地XML文件

问题描述:

我一直在寻找是否有简单的方法将NTLM响应写入本地XML文件。我会如何去做这件事?将Python NTLM XML响应写入本地XML文件

import requests 
import ntlm3 as ntlm 
from requests_ntlm import HttpNtlmAuth 

SITE = "website.com/_api/..." 
USERNAME = 'user' 
PASSWORD = 'pass' 

response = requests.get(SITE, auth=HttpNtlmAuth(USERNAME,PASSWORD)) 

print(response.status_code) 
print(response.text) 

假设NTLM response.text是一个格式良好的XML,简单地倾倒文本值到文件:

xmlfile = open('Output.xml', 'wb') 
xmlfile.write(response_text) 
xmlfile.close() 

并以漂亮的打印输出到文件,考虑lxml模块:

import lxml.etree as ET 

... 

dom = ET.fromstring(response.text) 
tree_out = ET.tostring(dom, pretty_print=True) 

xmlfile = open('Output.xml', 'wb') 
xmlfile.write(tree_out) 
xmlfile.close() 
+0

如果该文件有点混乱,我应该使用ElementTree?这实际上并没有创建文件,我需要创建一个名为“Output.xml”的文件 –

+0

你的意思是[漂亮的打印](http://*.com/questions/749796/pretty-printing-xml-in-python )? Minidom和lxml模块可以这样做。 – Parfait

+0

当我创建XML文件并运行代码时,我得到 xmlfile.write(response.text) io.UnsupportedOperation:not writable –