将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()
如果该文件有点混乱,我应该使用ElementTree?这实际上并没有创建文件,我需要创建一个名为“Output.xml”的文件 –
你的意思是[漂亮的打印](http://*.com/questions/749796/pretty-printing-xml-in-python )? Minidom和lxml模块可以这样做。 – Parfait
当我创建XML文件并运行代码时,我得到 xmlfile.write(response.text) io.UnsupportedOperation:not writable –