【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输出结果示例:

相关推荐
dagouaofei14 分钟前
2026 年工作计划 PPT 制作方式对比:AI 与传统方法差异
人工智能·python·powerpoint
虚拟搬运工18 分钟前
xformers造成comfyu启动失败
python·comfyui
Hello.Reader19 分钟前
PyFlink DataStream Operators 算子分类、函数写法、类型系统、链路优化(Chaining)与工程化踩坑
前端·python·算法
Learner30 分钟前
Python函数
开发语言·python
万行36 分钟前
机器学习&第五章生成式生成器
人工智能·python·算法·机器学习
_李小白36 分钟前
【Android FrameWork】延伸阅读:AMS 的 handleApplicationCrash
android·开发语言·python
万行1 小时前
机器学习&第一章
人工智能·python·机器学习·flask·计算机组成原理
2301_797312261 小时前
学习java37天
开发语言·python
WJSKad12351 小时前
果园树干识别与定位_faster-rcnn_x101-32x4d_fpn_1x_coco改进实践
python
深蓝电商API1 小时前
Scrapy中间件实战:自定义请求头和代理池实现
python·scrapy·中间件