always-prog
@always-prog
Я программист. Python, JavaScript, Django.

Какой парсер использовать?

Привет.
У меня есть XML (OpenXML) вот такого типа:
Пример

This XML file does not appear to have any style information associated with it. The document tree is shown below.
<w:document xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" mc:Ignorable="w14 wp14">
<w:body>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="1"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>List bullet</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="1"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t xml:space="preserve">List </w:t>
</w:r>
<w:r>
<w:rPr>
<w:i/>
<w:iCs/>
</w:rPr>
<w:t>bullet</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="1"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr>
<w:i/>
<w:iCs/>
</w:rPr>
<w:t>List bu</w:t>
</w:r>
<w:r>
<w:rPr>
<w:b/>
<w:bCs/>
</w:rPr>
<w:t>l</w:t>
</w:r>
<w:r>
<w:rPr/>
<w:t>let</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="1"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr>
<w:i/>
<w:i/>
<w:iCs/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:i/>
<w:iCs/>
</w:rPr>
<w:t>List bullet</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="3"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="3"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="3"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>nu</w:t>
</w:r>
<w:r>
<w:rPr>
<w:strike/>
</w:rPr>
<w:t>merat</w:t>
</w:r>
<w:r>
<w:rPr/>
<w:t>e list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="3"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="3"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr>
<w:i/>
<w:i/>
<w:iCs/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="1"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr>
<w:i/>
<w:i/>
<w:iCs/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:i/>
<w:iCs/>
</w:rPr>
<w:t>List bullet</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="4"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr>
<w:i/>
<w:iCs/>
</w:rPr>
<w:t>List b</w:t>
</w:r>
<w:r>
<w:rPr/>
<w:t>ullet</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="1"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t xml:space="preserve">List </w:t>
</w:r>
<w:r>
<w:rPr>
<w:u w:val="single"/>
</w:rPr>
<w:t>bul</w:t>
</w:r>
<w:r>
<w:rPr/>
<w:t>let</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="1"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>List bullet</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>common text</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>nume</w:t>
</w:r>
<w:r>
<w:rPr>
<w:u w:val="single"/>
</w:rPr>
<w:t>rate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numera</w:t>
</w:r>
<w:r>
<w:rPr>
<w:b/>
<w:bCs/>
</w:rPr>
<w:t>te list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr>
<w:b/>
<w:b/>
<w:bCs/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:b/>
<w:bCs/>
</w:rPr>
<w:t>nu</w:t>
</w:r>
<w:r>
<w:rPr>
<w:b/>
<w:bCs/>
<w:i/>
<w:iCs/>
</w:rPr>
<w:t>mer</w:t>
</w:r>
<w:r>
<w:rPr>
<w:b/>
<w:bCs/>
</w:rPr>
<w:t>ate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr>
<w:b/>
<w:b/>
<w:bCs/>
</w:rPr>
</w:pPr>
<w:r>
<w:rPr>
<w:b/>
<w:bCs/>
</w:rPr>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>nume</w:t>
</w:r>
<w:r>
<w:rPr>
<w:b/>
<w:bCs/>
</w:rPr>
<w:t>rate</w:t>
</w:r>
<w:r>
<w:rPr/>
<w:t xml:space="preserve"> list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:numPr>
<w:ilvl w:val="0"/>
<w:numId w:val="2"/>
</w:numPr>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
<w:t>numerate list</w:t>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
</w:r>
<w:r>
<w:br w:type="page"/>
</w:r>
</w:p>
<w:p>
<w:pPr>
<w:pStyle w:val="Normal"/>
<w:bidi w:val="0"/>
<w:jc w:val="left"/>
<w:rPr/>
</w:pPr>
<w:r>
<w:rPr/>
</w:r>
</w:p>
<w:sectPr>
<w:type w:val="nextPage"/>
<w:pgSz w:w="11906" w:h="16838"/>
<w:pgMar w:left="1134" w:right="1134" w:header="0" w:top="1134" w:footer="0" w:bottom="1134" w:gutter="0"/>
<w:pgNumType w:fmt="decimal"/>
<w:formProt w:val="false"/>
<w:textDirection w:val="lrTb"/>
<w:docGrid w:type="default" w:linePitch="100" w:charSpace="0"/>
</w:sectPr>
</w:body>
</w:document>


  1. Какой парсер для него использовать?
  2. Как находить теги?
  • Вопрос задан
  • 103 просмотра
Решения вопроса 1
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы