如何在python中保存多个xml文件
我正在尝试从一个网站获取一系列天气报告,我有下面的代码为我想要的XML创建所需的URL,用不同的名称保存返回的XML的最佳方法是什么如何在python中保存多个xml文件,python,xml,save,Python,Xml,Save,我正在尝试从一个网站获取一系列天气报告,我有下面的代码为我想要的XML创建所需的URL,用不同的名称保存返回的XML的最佳方法是什么 with open('file.csv') as csvfile: towns_csv = csv.reader(csvfile, dialect='excel') for rows in towns_csv: x = float(rows[2]) y = float(rows[1]) url = (
with open('file.csv') as csvfile:
towns_csv = csv.reader(csvfile, dialect='excel')
for rows in towns_csv:
x = float(rows[2])
y = float(rows[1])
url = ("http://api.met.no/weatherapi/locationforecast/1.9/?")
lat = "lat="+format(y)
lon = "lon="+format(x)
text = url + format(lat) + ";" + format(lon)
我用这段代码保存了单个XML
response = requests.get(text)
xml_text=response.text
winds= bs4.BeautifulSoup(xml_text, "xml")
f = open('test.xml', "w")
f.write(winds.prettify())
f.close()
CSV文件的第一列上有城市名称,理想情况下,我希望在创建每个XML文件时使用这些名称来保存它。我确信另一个for循环可以,我只是不知道如何创建它。
任何帮助都会很好,再次谢谢 你已经完成了大部分工作。只需使用
行[0]
作为文件名。假设行[0]
为'mumbai',则行[0]+'.xml'
将为您提供'mumbai.xml'
作为文件名。您可能需要检查城市名称是否有需要删除的空格等
with open('file.csv') as csvfile:
towns_csv = csv.reader(csvfile, dialect='excel')
for rows in towns_csv:
x = float(rows[2])
y = float(rows[1])
url = ("http://api.met.no/weatherapi/locationforecast/1.9/?")
lat = "lat="+format(y)
lon = "lon="+format(x)
text = url + format(lat) + ";" + format(lon)
response = requests.get(text)
xml_text=response.text
winds= bs4.BeautifulSoup(xml_text, "xml")
f = open(rows[0]+'.xml', "w")
f.write(winds.prettify())
f.close()