Python 2.7 Python编写不带命名空间的XML子元素

Python 2.7 Python编写不带命名空间的XML子元素,python-2.7,namespaces,Python 2.7,Namespaces,在发布关于xml名称空间的文章之前,我阅读了多个线程,但仍然存在在文件中编写没有名称空间的子xml元素的问题 尽管我在解析/读取文件之前提到注册的名称空间为空,“findall”没有返回任何元素。我验证了代码和xml文件中存在的名称空间,也打印在root.tag上 如果我从标记中完全删除xmlns,代码就可以工作了,但是我想读取没有名称空间的xml文件,然后写入没有名称空间的文件。你能告诉我我在这里犯的错误吗 这是我试过的代码 import xml.etree.ElementTree as ET

在发布关于xml名称空间的文章之前,我阅读了多个线程,但仍然存在在文件中编写没有名称空间的子xml元素的问题

尽管我在解析/读取文件之前提到注册的名称空间为空,“findall”没有返回任何元素。我验证了代码和xml文件中存在的名称空间,也打印在root.tag上

如果我从标记中完全删除xmlns,代码就可以工作了,但是我想读取没有名称空间的xml文件,然后写入没有名称空间的文件。你能告诉我我在这里犯的错误吗

这是我试过的代码

import xml.etree.ElementTree as ET 
ET.register_namespace("","urn:iso:2012.tech.xsd.001.04") ##Making sure parse a xml file without namespace
tree = ET.parse("sample.xml")
root = tree.getroot()

print("%s : %s"%(root.tag, root.attrib))
out_handle = open("customer_header.xml","ab")

for elt in root.iter():
    all_ntry = elt.findall('Customer') ## Not returning all Customer elements, even though ET.register_namespace('',uri) mentioned before parsing
    for ele in all_ntry:
         print("Customer Block Found:%s"%ele)
         ele_tree = ET.ElementTree(ele)
         ele_tree.write(out_handle)
XML文件(sample.XML):


000002
2017-09-24T00:54:26
试验
12345678
2017-09-22T13:54:26
测试列表信息
5.
25.80
ABC123
XYZ123
我需要编写一个只有文件的客户元素,没有名称空间

<?xml version="1.0" encoding="UTF-8"?>
 <Document xmlns:xsi="http://www.company.org/2000/instance"
      xmlns="urn:iso:2012.tech.xsd.001.04">
     <BackToCustomer>
       <CustGrup>
          <Mid>000002</Mid>
          <Date>2017-09-24T00:54:26</Date>
          <Info>TEST</Info>
       </CustGrup>
  <Batch>
     <Id>12345678</Id>
     <Date>2017-09-22T13:54:26</Date>
     <ListInfo>
     <Id>
        <Othr>
          <Id>TEST_ListInfo</Id>
        </Othr>
     </Id>
    </ListInfo>
      <Details>
         <Total>
            <Count>5</Count>
            <Amt>25.80</Amt>
         </Total>
      </Details>
     <Customer>
        <CustomerRef>ABC123</CustomerRef>
      </Customer>
     <Customer>
        <CustomerRef>XYZ123</CustomerRef>
     </Customer>
  </Batch>
  </BackToCustomer>
 </Document>