Не могу разобрать дерево XML без элемента границ из Pyosmium

Я загрузил некоторые данные из OpenStreetMap и сортировал данные, поэтому у меня есть только те узлы и пути, которые мне нужны для моего проекта (шоссе и соответствующие узлы в ссылках). Чтобы отсортировать файл XML и создать новый, я использую библиотеку Pyosmium. Все работает, за исключением того, что я не могу разобрать файл XML с помощью xml.etree.ElementTree. Когда я сортирую свои данные в новый файл, я не перемещаю границы, содержащие минимальную и максимальную долготу и широту. Если я вручную копирую границы, которые он анализирует.

Я прочитал документ Pyosium и нашел только osmium.io.Reader и osmium.io.Header, а также некоторые атрибуты геометрии, которые описывают коробку (содержащую то, что мне нужно), но я не нашел никакой помощи в отношении получения его из моего файла и используя мой писатель, чтобы записать его на новый.

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

          wayHandler = XMLhandlers.StreetHandler()
    nodeHandler = XMLhandlers.NodeHandler()
    wayHandler.apply_file('data/map_2.osm')
    nodeHandler.apply_file('data/map_2.osm')

    if os.path.exists('data/map_2_TEST.osm'):
        os.remove('data/map_2_TEST.osm')


    writer = XMLhandlers.wayWriter('data/map_2_TEST.osm')
    writer.apply_file('data/map_2.osm')

    tree = ET.parse('data/map_2_TEST.osm')

выдает следующую ошибку:

xml.etree.ElementTree.ParseError: элемент не найден: строка 1, столбец 0

Вставка исходного XML-файла: https://pastebin.com/i8uyCneC Вставка отсортированного XML-файла, который не анализируется: https://pastebin.com/WZUcsZg4

РЕДАКТИРОВАТЬ: ошибка не в самом разборе. Если я закомментирую часть, которая генерирует новый XML, и попытаюсь проанализировать только новый файл XML (который был создан заранее), он по какой-то причине сработает.

РЕДАКТИРОВАТЬ 2: ошибка заключалась в том, что я забыл вызвать close() на моем SimpleWriter, чтобы сбросить оставшиеся буферы и закрыть средство записи.

0 ответов

Другие вопросы по тегам