1

我不是一个很好的编码器。但我真的很想自动化我在工作中必须做的事情。基本上,我在谷歌地球上有一堆地标,显示了市政光纤网络的手孔。我有一些我想在 .kml 文件中作为标签放置的每个手孔的图片。基本上,我想拥有它,所以当他们点击谷歌地球中的地标时,它会弹出一个小的描述气泡,并显示每个手孔的图片以及可能的其他一些重要信息。

现在,我将每个手孔标记为 TO-。所以手孔编号 101 有一个 TO-101。而且我已经制作了一个脚本,将所有图片重命名以匹配名称。因此,如果手孔 TO-101 有 3 张图片,则它们将是 TO-101-1.jpg、TO-101-2.jpg、TO-101-3.jpg。

所以,基本上,我正在尝试制作一个读取 kml 文件的 python 脚本(我已经成功完成了)。我需要它在 .kml 文件中找到相应的 TO-101 或任何手孔,在该行下方添加一行:

<description> <img src="TO-101-1.jpg"><img src="TO-101-2.jpg"></description>. 

需要对大约 5000 张图片和 2000 个左右手孔进行此操作。

我试过这个:

import string, glob, sys, os, fileinput
f = open('./hand-holes.kml','r')

while f:
line = f.readline()
if line == "<name>TO-101</name>":
print line

而且我什至无法让它找到并打印那条线。我知道该行在文件中,并且我知道路径是正确的。因为如果我注释掉 if line == "TO-101" 它会显示文件的内容。所以,如果我什至不能让它发挥作用,我就没有机会让它的其余部分发挥作用。我尝试查看几段搜索和替换类型 python 示例代码。其中一些使用字符串库,我不确定是否需要使用。

谁能帮我?谢谢

肾病

4

1 回答 1

0

我假设您的if line == "<name>TO-101</name>"行不起作用的原因是因为它前面可能有空格。如果您将其更改为 line.strip() == ... 那么它可能会起作用。

最好的办法是实现一个 XML 处理程序来读取现有文件、解析它并添加新部分。也许从xml.sax开始

于 2011-08-04T16:28:15.713 回答