разбора строки, которая быстро использует xml-подобные теги - PullRequest
0 голосов
/ 08 ноября 2018

у меня есть файл, который содержит данные в этом формате, выглядят как XML без корневого тега

<Item>
     <ItemNumber>123</ItemNumber>
        <ItemData>
           very cool item
        </itemData>
        <ItemData>
         more informaion about this item
        </ItemData>
</Item>
<Item>
     <ItemNumber>123</ItemNumber>
        <ItemData>
           very cool item
        </itemData>
        <ItemData>
         more informaion about this item
        </ItemData>
</Item>

У меня есть много файлов в этом формате (1800+ каждый файл 1M-5M), и мне нужно их проанализировать Таким образом, чтобы я мог получить доступ к данным между тегами и дополнительные данные в тегах в быстрый способ. Я пытаюсь использовать BeautifulSoup, но я не очень эффективен, пробовал также lxml, но из-за того, что у меня нет корневых тегов, я получаю много ошибок и не могу изменить файлы

нужно использовать python3

1 Ответ

0 голосов
/ 08 ноября 2018

с использованием fromstring функции из lxml.html как , описанной в примере здесь ,

with open("d:/b.xml") as f:
    read_xml = fromstring(f.read())
    for tag in read_xml:
        print(tag.text_content().strip())

дает вам,

123

           very cool item


         more informaion about this item
123

           very cool item


         more informaion about this item
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...