Python: xml.etree.ElementTree.parse 输出文本并阻止输出流

Python: xml.etree.ElementTree.parse outputs text and blocks output stream

我尝试通过对服务器的 HTTP 请求获取一些 XML,然后使用 xml.etree.ElementTree.parse 解析 XML。

但是,由于某些原因,程序在控制台中输出整个 XML 并随后阻止输出流。

对于解决问题的一些帮助将不胜感激。我 post 我用来测试的代码。

import requests
import xml.etree.ElementTree as etree
import sys

TOPCODER_BASE_URL = 'http://community.topcoder.com/tc?module=BasicData&c=dd_round_results&rd='

def getWebsite(url):
    response = requests.get(url)
    return response.text

def getTopCoderRound(rnd):
    response = getWebsite(TOPCODER_BASE_URL + rnd)
    return response

def loadData(outputFile):
    handleFile = sys.argv[2]

    f = open(handleFile, 'r')
    outputFile.write ("#opened file")
    users = []
    for line in f:
        users.append(line)

    outputFile.write("#added users")
    return sys.argv[1], users

outputFile = open('results.txt', 'w')

outputFile.write("reached this point")

roundNo, users = loadData(outputFile)
outputFile.write("#loaded data")
xml = getTopCoderRound(roundNo)
outputFile.write("#read xml")
tree = etree.parse(xml)

outputFile.write("reached this point")
root = tree.getroot()

该函数应将文件而不是字符串作为参数。这修复了它。