使用Python 3,我想阅读XML网页并将其保存在本地驱动器中。 此外,如果文件已存在,则必须覆盖它。
我测试了一些脚本,如:
import urllib.request
xml = urllib.request.urlopen('URL')
data = xml.read()
file = open("file.xml","wb")
file.writelines(data)
file.close()
但我有一个错误:
TypeError: a bytes-like object is required, not 'int'
答案 0 :(得分:0)
第一个建议:即使official urllib docs says做什么也不要使用urllib
,请改用requests
。
你的问题是你使用.writelines()
并且它需要一个行列表,而不是一个字节对象(在Python中一次错误消息不是很有帮助)。请改用.write()
import requests
resp = requests.get('URL')
with open('file.xml', 'wb') as foutput:
foutput.write(resp.content)
答案 1 :(得分:0)
我找到了解决方案:
from urllib.request import urlopen
xml = open("import.xml", "r+")
xml.write(urlopen('URL').read().decode('utf-8'))
xml.close()
感谢您的帮助。