XML格式的图像字段输出

2024-09-30 19:36:16 发布

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

我成功地抓取了所有图像URL,它们正确地输出了图像结果字段,如下所示:

'image': [{'checksum': 'c2cc74b428a3fb18d6ac8d47978c98cb',
        'path': 'full/33032b22901636542bef9dd6d3b6e98d1f7eb463.jpg',
        'url': 'image-url.com/ID7b6b6700-0000-0500-0000-000003422a59.jpg'},
       {'checksum': '3c21a99a0d45870e4ab79f201f97c35e',
        'path': 'full/8f7d216aee4942987860c77efff0595bfcdccdf9.jpg',
        'url': 'http://image-url.com/ID7b6b6700-0000-0500-0000-000003422a5b.jpg'}]

我试图将图像路径包装到一个XML节点<image>,但我真的不知道正确的方法是什么。 现在,我猜输出是这样的,因为它是一个来自列表的iterable值:

<image>
<value>
<url>
http://image-url.com/ID0df36700-0000-0500-0000-00000346f2d2.jpg
</url>
<path>full/8df264408df9bb24e7d750f61828239534d96497.jpg</path>
<checksum>d87852609293934aa91edd649d3051aa</checksum>
</value>
</image>

我希望每个图像路径的输出如下,因为我不需要其他字段:

 <image>full/8df264408df9bb24e7d750f61828239534d96497.jpg</image>

我已经尝试应用序列化程序函数来格式化字段,但实际上无法让它为每个图像路径输出一个新节点。 能给我一些指向正确方向的指针吗?你知道吗


Tags: path图像image路径comhttpurl节点
1条回答
网友
1楼 · 发布于 2024-09-30 19:36:16
import xml.etree.ElementTree as ET
tree = ET.parse('file.xml')
root = tree.getroot()
for child in root[0]:
    if child.tag == url:
        url = child.text
    if child.tag == path:
        path = child.text
    print child.tag,child.text

如果“image”是root,那么“value”将是root[0] “url”和“path”将是根[0]的子级

如果你有很多“值”,你可以使用for循环来改变root[x]。你知道吗

相关问题 更多 >