语法错误:前缀映射中找不到前缀“a”

2024-04-28 02:54:29 发布

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

我正在尝试创建一个计算pptx文档中单词数的函数。问题是我不知道怎样才能找到这种标签:

<a:t>Some Text</a:t>

当我试图:print xmlTree.findall('.//a:t')时,它返回

SyntaxError: prefix 'a' not found in prefix map

你知道怎么做才能成功吗?

这是函数:

def get_pptx_word_count(filename):
    import xml.etree.ElementTree as ET
    import zipfile
    z = zipfile.ZipFile(filename)
    i=0
    wordcount = 0
    while True:
        i+=1
        slidename = 'slide{}.xml'.format(i)
        try:
            slide = z.read("ppt/slides/{}".format(slidename))
        except KeyError:
            break
        xmlTree = ET.fromstring(slide)
        for elem in xmlTree.iter(): 
            if elem.tag=='a:t':
                #text = elem.getText
                #num = len(text.split(' '))
                #wordcount+=num

Tags: 函数inimportformatprefixxmlfilenamewordcount