Парсер значений из XML файла с записью в *.txt (Python)
1 500 руб. за проект
Необходим парсер определенных значений из XML файла, разбивкой полученных данных на блоки и запись их в *.txt файл.
(Пример в файле "example.xml.txt")
Подробнее:
Все интересующие значения начинаются после тега <locationInformation>
Текст после тега <location> нужно считать в одну строку, т.е. из
<ct:forestry id="G_00972" name="Кыштымское" description=""/>
<ct:subforestry id="G_U7348" name="Егозинское" description=""/>
<ct:tract name="" description=""/>
<ct:quarter>38</ct:quarter>
<ct:taxationUnit>17</ct:taxationUnit>
<ct:cuttingArea>1</ct:cuttingArea>
Получить строчку вида: Кыштымское_Егозинское_38_17_1
- предпочтительный разделитель значений: _
После этого следует перенос строки
Далее необходимо за тегом <explication> достать пары значений координат (теги <longitude>,<latitude>), т.е. из:
<explication>
<row>
<objectNumber>1</objectNumber>
<numberBegin>2</numberBegin>
<numberEnd>3</numberEnd>
<lineDirection>СВ81</lineDirection>
<lineLength>230</lineLength>
<longitude>60.53693</longitude>
<latitude>55.786169</latitude>
</row>
получить значения "55.786169" "60.53693" - именно в таком порядке, сначала <latitude>
Каждая пара значений - отдельная строка, разделитель значений - пробел.
Замечание: данные в теге <binding> следует пропускать.
После тега </explication> - пустая строка в ТХТ и переходить к следующему <location>
Желаемая кодировка записанного *.тхт - utf-8
Пример блока данных на выходе:
Кыштымское_Егозинское_38_17_1
56.05159155 60.97473328
56.05429960 60.97175066
56.05668397 60.97546284
56.05392816 60.98262970
56.05161552 60.97911064
Кыштымское_Егозинское_55_14_2,8
56.05159155 60.97473328
56.05429960 60.97175066
56.05668397 60.97546284
56.05392816 60.98262970
56.05161552 60.97911064
и т.д. - все в один текстовый файл.
(Пример в файле "example.xml.txt")
Подробнее:
Все интересующие значения начинаются после тега <locationInformation>
Текст после тега <location> нужно считать в одну строку, т.е. из
<ct:forestry id="G_00972" name="Кыштымское" description=""/>
<ct:subforestry id="G_U7348" name="Егозинское" description=""/>
<ct:tract name="" description=""/>
<ct:quarter>38</ct:quarter>
<ct:taxationUnit>17</ct:taxationUnit>
<ct:cuttingArea>1</ct:cuttingArea>
Получить строчку вида: Кыштымское_Егозинское_38_17_1
- предпочтительный разделитель значений: _
После этого следует перенос строки
Далее необходимо за тегом <explication> достать пары значений координат (теги <longitude>,<latitude>), т.е. из:
<explication>
<row>
<objectNumber>1</objectNumber>
<numberBegin>2</numberBegin>
<numberEnd>3</numberEnd>
<lineDirection>СВ81</lineDirection>
<lineLength>230</lineLength>
<longitude>60.53693</longitude>
<latitude>55.786169</latitude>
</row>
получить значения "55.786169" "60.53693" - именно в таком порядке, сначала <latitude>
Каждая пара значений - отдельная строка, разделитель значений - пробел.
Замечание: данные в теге <binding> следует пропускать.
После тега </explication> - пустая строка в ТХТ и переходить к следующему <location>
Желаемая кодировка записанного *.тхт - utf-8
Пример блока данных на выходе:
Кыштымское_Егозинское_38_17_1
56.05159155 60.97473328
56.05429960 60.97175066
56.05668397 60.97546284
56.05392816 60.98262970
56.05161552 60.97911064
Кыштымское_Егозинское_55_14_2,8
56.05159155 60.97473328
56.05429960 60.97175066
56.05668397 60.97546284
56.05392816 60.98262970
56.05161552 60.97911064
и т.д. - все в один текстовый файл.
Отзывы
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.
На целевой машине была проблема с питоном - Сергей подключился по удаленке, помог все настроить.
Однозначно рекомендую к сотрудничеству.