Я вчера разместил вопрос здесь: Поиск и добавление в файл .kml с использованием python
Я прочитал несколько учебников и теперь лучше понимаю, как работает Python, и этохорошо.Тем не менее, я все еще не могу понять мой сценарий правильно.Я знаю, что я очень близко.По сути, я хочу добавить несколько файлов JPG в файл .kml, который в основном представляет собой XML в Google Планета Земля.Я хочу, чтобы моя программа нашла "метку места" Google Earth в xml-файле с именем: TO-XXX
, где XXX соответствует TO-XXX.jpg.У меня уже есть папка с кучей .jpgs, имя файла которой совпадает с именем каждого метки.Мне нужна программа, чтобы найти
<name> (for example <name>TO-101</name>)
и добавить строку прямо под строкой с именем:
<description> <img src=TO-101.jpg></description>.
Итак, у меня написан код, но я просто могу 'Кажется, чтобы найти его.Который всегда пишется:
"\t\t\t<name>TO-XXX</name>\n".
Итак, вот код:
import os
infile = 'TO-Hand-Holes2.kml' # the file I am reading
outfile = 'TO-Hand-Holes-Output.kml' # the file I plan to write to, using print for now
images = os.listdir("./images") # the images folder, all image names match names
source = open(infile, 'r')
target = open(outfile, 'w')
x = 0 #an incrementer
i = 0 # an incrementer
readxml = source.readline
while x < 20000: #There are about 17,000 lines in the .kml file
readxml = source.readline()
while i < len(images):
word = images[i]
if readxml == "\t\t\t<name>%s</name>\n" % word[:6]: #!!!!!!!!! the problem is here
print readxml #output the <name>
print word[:6] #output the <description>
hit = 'true'
i = i + 1
else:
hit = 'false'
#print "test%s" % word[:6]
i = i + 1
if hit == 'false':
print ("%s") % readxml
x = x + 1
Я просто не могу заставить его распознавать строки.Есть предложения?