XML结束标记将文件弄乱

2024-09-24 22:20:38 发布

您现在位置:Python中文网/ 问答频道 /正文

基本上,我下载了一些XML文件,然后用元素树附加它们。问题是最终文件包含以下内容:

<<?xml version="1.0" encoding="UTF-8" standalone="yes"?> - at the start of each new xml fil
...
</product_info> /><product_info> ...

其中,产品信息是实际的余弦标签和/>;是什么把一切都搞砸了

我通过删除原始XML文件中的XML声明修复了第一部分:

replace('<?xml version="1.0" encoding="UTF-8" standalone="yes"?><','')
#I remove a closing bracet at the end because I cannot remove the opening bracet as it is not in the original file

我怀疑问题在于,出于某种原因,在对每个XML文件进行模拟之前,它都包含在某个标记中

当我检查“ET.SubElement(root,response_xml)”时,这是打印的内容:

<Element 'product_info article_id="0006303562403"...'

标签可能是问题所在吗


Tags: 文件theinfoversion标签xmlproductremove
1条回答
网友
1楼 · 发布于 2024-09-24 22:20:38

如果您的文件不是well-formed,那么它就不符合XML的条件,并且您通常不能使用设计用于在不符合XML定义的数据上解析XML的库

结构良好的故障示例包括:

  • 在XML声明之前有任何内容
  • 有多个根元素的
  • 未正确关闭元素
  • 组件名称中不允许使用字符。(例如,XML属性名称不能以'开头。)

您必须修复违反良好格式规则的代码,或手动编辑数据进行修复,或查看此Q/A了解其他选项:

相关问题 更多 >