【OpenDRIVE_Python】使用python脚本输出OD数据中含有隧道的道路ID和隧道信息

示例代码说明:

遍历OD数据中每条道路Road,若Road中存在隧道tunnel属性,则将该道路ID和包含的所有隧道信息输出到xml文件中。

复制代码
import xml.dom.minidom
from xml.dom.minidom import parse
from xml.dom import Node
import sys
import os
# 读取OpenDRIVE文件路径
xml_filepath = r'E:\OpenDRIVE.xodr'
# 得到文件对象
dom_obj = xml.dom.minidom.parse(xml_filepath)
# 得到xml文档对象
root = dom_obj.documentElement
roads = root.getElementsByTagName('road')
filepath = "D:\\tunnel.xml"
if (os.path.exists(filepath)):
    os.remove(filepath)
fp = open(filepath, 'a+')
for road in roads:
    tunnels = road.getElementsByTagName("tunnel")
    if (len(tunnels) > 0):
        print(road.getAttribute("id"))
        fp.write((road.getAttribute("id")))
        fp.write('\n')
        for j in range(len(tunnels)):
            print(tunnels[j].toxml())
            fp.write(tunnels[j].toxml())
            fp.write('\n')
fp.close()

OpenDRIVE文件示例:

xml输出结果示例:

相关推荐
ZZHow10247 小时前
02OpenCV基本操作
python·opencv·计算机视觉
计算机学长felix7 小时前
基于Django的“酒店推荐系统”设计与开发(源码+数据库+文档+PPT)
数据库·python·mysql·django·vue
站大爷IP7 小时前
Python随机数函数全解析:5个核心工具的实战指南
python
悟乙己7 小时前
使用 Python 中的强化学习最大化简单 RAG 性能
开发语言·python·agent·rag·n8n
max5006007 小时前
图像处理:实现多图点重叠效果
开发语言·图像处理·人工智能·python·深度学习·音视频
AI原吾8 小时前
玩转物联网只需十行代码,可它为何悄悄停止维护
python·物联网·hbmqtt
云动雨颤8 小时前
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
python·单元测试
SunnyDays10118 小时前
Python 实现 HTML 转 Word 和 PDF
python·html转word·html转pdf·html转docx·html转doc
跟橙姐学代码9 小时前
Python异常处理:告别程序崩溃,让代码更优雅!
前端·python·ipython
蓝纹绿茶9 小时前
Python程序使用了Ffmpeg,结束程序后,文件夹中仍然生成音频、视频文件
python·ubuntu·ffmpeg·音视频