日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python批量生成,用python批量生成简单的xml文档

發布時間:2025/3/20 python 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python批量生成,用python批量生成简单的xml文档 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近生成訓練數據時,給一批無效的背景圖片生成對應的xml文檔,我用python寫了一個簡單的批量生成xml文檔的demo,遇見了意外的小問題,記錄一下。

報錯問題為:ImportError: No module named 'xml.dom'; 'xml' is not a package

看見No module named “xxx”時想的是不就是沒安裝xml包嘛,還不簡單,install一下不就好了,然而并沒什么用,xml是python本生就帶的。其實出現這種錯誤的原因是自己的命名規則問題,將python程序命名為"xml.py"導致的。讓運行python程序時出現自導現象,從而出錯。一個小錯誤,發現時我自己都笑了。

順便貼一下代碼,作為一個小demo分享一下。

import os

import xml.dom.minidom

read_file='jpg'

for file_name in os.listdir(read_file):

new_txtname=file_name.split('.')[0]

#創建一個空的Dom文檔對象

doc = xml.dom.minidom.Document()

#創建根節點,此根節點為annotation

annotation = doc.createElement('annotation')

#將根節點添加到DOm文檔對象中

doc.appendChild(annotation)

folder = doc.createElement('folder')

#內容寫入

folder_text = doc.createTextNode('ee')

folder.appendChild(folder_text)

annotation.appendChild(folder)

filename = doc.createElement('filename')

filename_text = doc.createTextNode(file_name)

filename.appendChild(filename_text)

annotation.appendChild(filename)

path = doc.createElement('path')

path_text = doc.createTextNode('path is null')

path.appendChild(path_text)

annotation.appendChild(path)

source = doc.createElement('source')

databass = doc.createElement('databass')

databass_text = doc.createTextNode('Unknown')

source.appendChild(databass)

databass.appendChild(databass_text)

annotation.appendChild(source)

size = doc.createElement('size')

width = doc.createElement('width')

width_text = doc.createTextNode('875')

height = doc.createElement('height')

height_text = doc.createTextNode('656')

depth = doc.createElement('depth')

depth_text = doc.createTextNode('1')

size.appendChild(width)

width.appendChild(width_text)

size.appendChild(height)

height.appendChild(height_text)

size.appendChild(depth)

depth.appendChild(depth_text)

annotation.appendChild(size)

segmented = doc.createElement('segmented')

segmented_text = doc.createTextNode('0')

segmented.appendChild(segmented_text)

annotation.appendChild(segmented)

#寫入xml文本文件中

fp = open('xml/%s.xml' %new_txtname , 'w+')

doc.writexml(fp, indent='\t', addindent='\t', newl='\n',encoding='utf-8')

fp.close()

四種生成和解析XML文檔的方法詳解(介紹+優缺點比較+示例)

眾所周知,現在解析XML的方法越來越多,但主流的方法也就四種,即:DOM.SAX.JDOM和DOM4J 下面首先給出這四種方法的jar包下載地址 DOM:在現在的Java JDK里都自帶了,在xml- ...

四種生成和解析XML文檔的方法詳解

眾所周知,現在解析XML的方法越來越多,但主流的方法也就四種,即:DOM.SAX.JDOM和DOM4J 下面首先給出這四種方法的jar包下載地址 DOM:在現在的Java JDK里都自帶了,在xml- ...

大雜燴 -- 四種生成和解析XML文檔的方法詳解

基礎大雜燴 -- 目錄 眾所周知,現在解析XML的方法越來越多,但主流的方法也就四種,即:DOM.SAX.JDOM和DOM4J DOM:在現在的Java JDK里都自帶了,在xml-apis.jar包 ...

四種生成和解析XML文檔的方法介紹

解析XML的方法越來越多,但主流的方法也就四種,即:DOM.SAX.JDOM和DOM4J 1.DOM(Document Object Model) DOM是用與平臺和語言無關的方式表示XML文檔的官方 ...

python開發_xml.dom_解析XML文檔_完整版_博主推薦

在閱讀之前,你需要了解一些xml.dom的一些理論知識,在這里你可以對xml.dom有一定的了解,如果你閱讀完之后. 下面是我做的demo 運行效果: 解析的XML文件位置:c:\\test\\hon ...

C# WebForm 使用NPOI 2 生成簡單的word文檔(.docx)

使用NPOI可以方便的實現服務端對Word.Excel的讀寫.要實現對Word的讀寫操作,需要引用NPOI.OOXML.dll,應用命名空間XWPF. 本文使用NPOI 2.0實現對Word的基本生成 ...

WSDL 文檔-一個簡單的 XML 文檔

WSDL 文檔是利用這些主要的元素來描述某個 web service 的: -web service 執行的操作 -web service ...

6-3 如何解析簡單的XML文檔

元素節點.元素樹 >>> from xml.etree.ElementTree import parse >>> help(parse) Help on funct ...

MVC模式簡單的Xml文檔解析加Vue渲染

前端代碼:

使用說明 1. 從github上獲取代碼,并部署到IIS中,應用程序池選擇4.0. 2. 打開配置文件,在AppSettings中,設置SaveMode模式,如果選擇的Distributed模式,需要 ...

前端之常用標簽和CSS初識

外層div的寬度是100%,就是視口的大小,當視口被拉窄到小于內層div的寬度980px時,比如800px,此時 外層div寬度為800px,內層div寬度依然為980px,而css中只設置了外層di ...

[Java]java反射隨筆

類是面向對象的靈魂,一切事物都可以以類來抽象. 在java使用過程中,我們可能會經常用到一個反射的知識,只是別人都封裝好的,如jdbc的加載驅動類有一句Class.for(“…jdbc…”).newI ...

SQL隨筆

多表分頁查詢: ,; 向表中插入新的字段: ALTER TABLE `Table_name` ) NOT NULL DEFAULT '' AFTER `id`; ?更新表數據: UPDATE [LOW ...

spring配置文件一般結構

xml schema:schema在文檔根節點當中通過xmlns對文檔當中的命名空間進行申明,第三行代碼定義了默認命名空間用于spring bean的定義.xsi命名空間用于為每個文檔中指定 ...

python_IO編程

本篇文章將介紹python里面的I/O編程.更多內容請參考:python學習指南 I/O編程 讀寫文件時最常見的IO操作.Python內置了讀寫文件的函數,用法和C是兼容的. 讀寫文件前,我們必須了解 ...

vim編輯器的基本用法

使用linux時候,個人比較喜歡用vim編輯器,對文本進行操作. 為了方便我使用vim編輯器,特地搜索了一下教程記錄于此,防止自己忘記了. 下面就是一些vim使用的基礎操作: 使用vim打開軟件 vi ...

sudo的安裝

關于mini版的centos7的是不能直接sudo命令的 下面我來說一下怎么讓sudo命令生效 第一步 先切換到root用戶: su - ?? 第二步 visudo 給相應用戶分配sudo的權限 第三 ...

1.JMeter===添加響應斷言

斷言即Lr中的檢查點,我們在進行測試時,需要對每次請求測試的返回做檢驗 1.以百度做案例,添加線程組==添加HTTP請求==添加查看結果樹 2.在HTTP請求下添加響應斷言 注:模式匹配規則,比較常用 ...

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的python批量生成,用python批量生成简单的xml文档的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。