我是一名教师。我想要一份对我布置的论文发表评论的所有学生的名单,以及他们说了什么。Drive API 对我来说太难了,但我想我可以将它们下载为......
我是一名教师。我想要一份对我布置的论文发表评论的所有学生的名单,以及他们说了什么。Drive API 对我来说太难了,但我想我可以将它们下载为 zip 文件并解析 XML。
评论用标签 w:comment
标记,其中 w:t
表示评论文本, 表示评论内容。这应该很容易,但是 XML (etree) 让我很头疼。
通过教程(和官方 Python 文档):
z = zipfile.ZipFile('test.docx')
x = z.read('word/comments.xml')
tree = etree.XML(x)
然后我这样做:
children = tree.getiterator()
for c in children:
print(c.attrib)
结果是:
{}
{'{http://schemas.openxmlformats.org/wordprocessingml/2006/main}author': 'Joe Shmoe', '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}id': '1', '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}date': '2017-11-17T16:58:27Z'}
{'{http://schemas.openxmlformats.org/wordprocessingml/2006/main}rsidR': '00000000', '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}rsidDel': '00000000', '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}rsidP': '00000000', '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}rsidRDefault': '00000000', '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}rsidRPr': '00000000'}
{}
{'{http://schemas.openxmlformats.org/wordprocessingml/2006/main}val': '0'}
{'{http://schemas.openxmlformats.org/wordprocessingml/2006/main}val': '0'}
{'{http://schemas.openxmlformats.org/wordprocessingml/2006/main}val': '0'}
此后,我完全陷入了困境。我试过了 element.get()
,但 element.findall()
没成功。即使我复制/粘贴值 ( '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}val'
),我也会得到 None
回报。
有人可以帮忙吗?