У меня есть некоторые файлы sgml, которые примерно стандартизованы. Однако, прежде чем открыть файл и лично его прочитать, могут быть данные, содержащиеся в теге, который я не знаю. Например, файлы имеют адреса и, как правило, адреса имеют улицу, город, штат, почтовый индекс и телефон. Каждый элемент адреса указывается с меткойИспользование lxml для извлечения данных, где все элементы не известны заранее
<ADDRESS>
<STREET>One Main Street
<CITY>Gotham City
<ZIP>99999
<PHONE>555-123-5467
</ADDRESS>
Но, к примеру, я обнаружил, что есть метки для страны, Street1, STREET2. У меня есть более 200 тыс. Файлов для обработки, и я хочу знать, можно ли вытащить все элементы адресов, не беспокоясь о существовании неизвестных тегов.
То, что я сделал до сих пор является
h=fromstring(my_data_in_a_string)
for each in h.cssselect('mail_address'):
each.text_content()
но то, что я получаю это проблематично, потому что я не могу определить, где один элемент заканчивается и начинается следующая
One Main StreetGotham City99999-123-5467
Итак, вы хотите получить все теги, присутствующие в файле? – user225312
Ну да и нет. Первое получение всех тегов в файле было бы замечательно, но я также хотел бы получить все теги, как в разделе ADDRESS файла – PyNEwbie
Я запутался - ваш ввод SGML, но вы приняли ответ, который включает в себя анализ XML - есть вы нашли способ конвертировать SGML в XML в первую очередь? Если это так, я могу использовать вашу технику! :) –