今天來學習如何讀取網路上以及下載到電腦的xml檔。
xml是一種可延伸標記式語言,將數據以一種可讀性好且易於處理的方式表示,並且它是一種通用的數據交換格式,用<>做為資料標記。
網址:https://data.ntpc.gov.tw/datasets/8EA9491D-FF84-4525-9264-86A2097CCA97
網際網路讀取
import requests
import xml.etree.ElementTree as ET
# 指定XML數據的URL
xml_url = "https://data.ntpc.gov.tw/datasets/8EA9491D-FF84-4525-9264-86A2097CCA97"
try:
# 使用requests取得XML
response = requests.get(xml_url)
# 檢查響應的狀態碼
if response.status_code == 200:
for item in root.findall(".//item"):
no = item.find("no").text
district = item.find("district").text
areacode = item.find("areacode").text
danger_area = item.find("danger_area").text
print("編號:", no)
print("行政區:", district)
print("行政區域代碼:", areacode)
print("danger_area:", danger_area)
else:
print("無法取得XML數據,狀態碼:", response.status_code)
except requests.exceptions.RequestException as e:
print("發生錯誤:", e)
檔案讀取
import xml.etree.ElementTree as XET
tree = XET.parse('a.xml') # 以XET套件載入XML檔案
root = tree.getroot() # 取得XML表格
try:
for i in range(len(root)):
print(root[i][0].text, root[i][1].text, root[i][2].text ,root[i][3].text)
except ET.ParseError as e:
print("解析 XML 檔案時發生錯誤:", e)
except FileNotFoundError as e:
print("找不到指定的 XML 檔案:", e)
---20230928---