2016-08-18 2 views
0

Я пытаюсь захватить атрибуты из XML-тега, так что я могу получить правильные данные и поместить его в CSV файлПолучить атрибуты из XML-тега с помощью Python

Я попытался найти ответы на некоторые вопросы, но есть не нашел ничего окончательного, кроме того, как захватить сам этот тег или получить атрибуты с использованием другого языка.

Вот что строка из файла XML будет выглядеть следующим образом:

<item id="16" class="ItemClass" status="closed" 
opened="2008-07-14T22:31:10Z" closed="2008-07-14T23:45:08Z" 
url="www.google.com"/> 

Тег «элемент» атрибуты «идентификатор», «класс», «статус», «открыто», «закрыто», «URL»

я могу получить имя тега, а элементы внутри тега (<tag>item inside tag</tag>), используя метод нашел here:

import xml.etree.ElementTree as ET 
import csv 

item_head = [] 
item = [] 

[...] 

name = item.find('item').tag 
item_head.append(name) 

name = item.find('item').text 
item.append(name) 

Но я хочу, чтобы получить ТНА t ATTRIBUTES, а не тег.

Я могу легко написать заголовок файла, так как элементы всегда будут содержать одну и ту же информацию. Таким образом, это будет выглядеть так:

item_head.append('id') 
item_head.append('class') 
item_head.append('status') 
...and so on... 

Но я не знаю, как захватить другую информацию, такую ​​как ID = «16»

Конечный результат должен быть что-то вроде этого:

id, class, status, opened, closed, url 
16, ItemClass, closed, 2008-07-14T22:31:10Z, 2008-07-14T23:45:08Z, www.google.com 

Может ли кто-нибудь помочь мне с этим?

ответ

2

xml.etree.ElementTree.Element также имеет attrib свойство, которое является словарь, содержащий атрибуты элемента

>>> item.attrib['id'] 
'16' 
+0

Ну, это было просто. =) Спасибо! – Apolymoxic

Смежные вопросы