XML到CSV Coop项目

时间:2017-03-20 09:19:17

标签: python xml csv

现在我在工作中发现了一个问题。 我需要来自http://air4thai.pcd.go.th/services/getAQI_XML.php?region=2的XML数据 我想解析XML并输出到CSV

我是python中的新手 现在我测试编码解析PM10像这样

import xml.etree.ElementTree as ET
import requests
import os
Air4thaiURL = 'http://air4thai.pcd.go.th/services/getAQI_XML.php?region=2'
resp = requests.get(Air4thaiURL)
msg = resp.content
tree = ET.fromstring(msg)
for station in tree.findall('.//station/LastUpdate'):
print ('{}'.format(
station.get('PM10')))   

但是这样的结果

无 没有 没有 没有 没有 没有 没有 没有 没有 没有 没有 没有 没有 没有 没有 没有 无

所以,它必须显示在Value / Im中,尝试输入:s it it result

Traceback (most recent call last):
  File "C:\Users\Gistda59\Desktop\Coop - Python Script\pm10_XML.py", line 11, in <module>
    station.get('PM10')))
TypeError: non-empty format string passed to object.__format__

如何解决它并建议我从这个URL解析XML到CSV 非常感谢你帮我解决问题。

1 个答案:

答案 0 :(得分:0)

这就是你想要的:

import xml.etree.ElementTree as ET
import requests
import os
Air4thaiURL = 'http://air4thai.pcd.go.th/services/getAQI_XML.php?region=2'
resp = requests.get(Air4thaiURL)
msg = resp.content
tree = ET.fromstring(msg)
for station in tree.findall('.//station/LastUpdate'):
    if station.tag == 'LastUpdate':
        for item in station:
            if item.tag == 'PM10':
                print(item.attrib)