我试图使用以下代码检索'a:t'标签之间的类型=“slidenum”之间的幻灯片编号,但某些内容不起作用。我应该得到1从xml标签中检索数据Python
这里的XML:
<a:p><a:fld id="{55FBEE69-CA5C-45C8-BA74-481781281731}" type="slidenum">
<a:rPr lang="en-US" sz="1300" i="0"><a:solidFill><a:srgbClr val="000000"/>
</a:solidFill></a:rPr><a:pPr/><a:t>1</a:t></a:fld><a:endParaRPr lang="en-US"
sz="1300" i="0"><a:solidFill><a:srgbClr val="000000"/></a:solidFill>
</a:endParaRPr></a:p></p:txBody></p:sp>
这里是我的代码
z = zipfile.ZipFile(pptx_filename)
for name in z.namelist():
m = re.match(r'ppt/notesSlides/notesSlide\d+\.xml', name)
if m is not None:
f = z.open(name)
tree = ET.parse(f)
f.close()
root = tree.getroot()
# Find the slide number.
slide_num = None
for fld in root.findall('/'.join(['.', '', p.txBody, a.p, a.fld])):
if fld.get('type', '') == 'slidenum':
slide_num = int(fld.find(a.t).text)
print slide_num
您能编辑问题以包含XML吗?我认为这对我们有很大的帮助:)在评论 – Jerfov2
'a:'中很难阅读它,这意味着这些元素都在XML命名空间中。搜索这些标签时可能需要包含名称空间。如果你不确定如何做,你应该检查这个答案:http://stackoverflow.com/a/14853417/849425 –