python修改xml保留注释_Python批量修改XML,附源码,需要安装PY 3.7.2

本帖最后由 fenrir 于 2019-11-7 00:27 编辑

XML干啥的?

360截图20191106214044006.jpg (23.15 KB, 下载次数: 0)

2019-11-6 21:40 上传

CPC采用的数据格式为:doc模板文件(骨架)+xml文件(肉)

因此,通过修改XML就可以修改提交文件的内容,这个应用可就广了,什么批量变更啊,批量提交申请啊(PDF五书),批量提费减啊,批量撤回啊,批量恢复啊(这个比较少),批量作妖啥的……

本次提供的用法只能修改一个项目的文件,即同时修改下图中前三个文件夹中的XML文件,做过批量上报的同学应该干过。使用方法:将py文件与解压后的著录项目置于同一文件夹内,如图所示,双击PY即可修改所有XML文件的专利号和专利名称

360截图20191106211742293.jpg (15.18 KB, 下载次数: 0)

2019-11-6 21:21 上传

证明文件、委托书啥的当然还是要做的,首个著录项目内容还是要填的,以后管的更严了,捷径啥的还是尽量少走把。

以下只是提供一种批量修改专利号和专利名称的方法,

另外,还可以增加其他功能,例如批量修改专利权人,自动替换委托书JPG和证明文件JPG

有兴趣同学的自己去开发把,效率提升还是相当可观的,比如一次性递交100,1000个著录项目的情况,简直不要太爽

基础代码如下:

import os

import xml.dom.minidom

#PY文件所在路径

in_dir = os.path.dirname(os.path.abspath(__file__))

#修改后的专利名称/专利号/申请人

name='专利名称'

num='专利号'

applicant='专利权人'

###读取单个xml文件

file_dir=in_dir+'/list.xml'

wr=open(file_dir,'rb').read().decode('utf-8','ignore')

open(file_dir,'w+',encoding='utf-8').write(wr)

tree_list=xml.dom.minidom.parse(file_dir)

root=tree_list.documentElement

root.getElementsByTagName('FAMINGMC')[0].firstChild.data=name

root.getElementsByTagName('SHENQINGH')[0].firstChild.data=num

tree_list.writexml(open(file_dir,'w'),encoding='utf-8')

#######

file_dir=in_dir+'/100007/100007.xml'

tree_100007=xml.dom.minidom.parse(file_dir)

root=tree_100007.documentElement

root.getElementsByTagName('委托代办发明名称')[0].firstChild.data=name

root.getElementsByTagName('委托代办发明专利申请号')[0].firstChild.data=num

tree_100007.writexml(open(file_dir,'w'),encoding='utf-8')

######

file_dir=in_dir+'/100016/100016.xml'

tree_100016=xml.dom.minidom.parse(file_dir)

root=tree_100016.documentElement

root.getElementsByTagName('发明创造名称')[0].firstChild.data=name

root.getElementsByTagName('申请号或专利号')[0].firstChild.data=num

root.getElementsByTagName('申请人或专利权人姓名或名称')[0].firstChild.data=applicant

tree_100016.writexml(open(file_dir,'w'),encoding='utf-8')

#######

file_dir=in_dir+'/100104/100104-1.xml'

tree_100104=xml.dom.minidom.parse(file_dir)

root=tree_100104.documentElement

root.getElementsByTagName('发明创造名称')[0].firstChild.data=name

root.getElementsByTagName('申请号')[0].firstChild.data=num

root.getElementsByTagName('申请人')[0].firstChild.data=applicant

tree_100104.writexml(open(file_dir,'w'),encoding='utf-8')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值