我目前正在完成一个程序,该程序应该解析一个 xml 文件,然后设置它,然后通过电子邮件发送它。我几乎完成了它,但我似乎被卡住了,可以使用一些帮助。我正在尝试从已完成的字典中获取路径属性“dir”和“file”,但出现错误。这是我目前正在处理的部分代码。
更新:我添加了字典,告诉我它是目录更改还是文件名更改旁边的列表
def formatChangesByAuthor(changesByAuthor):
content = ''
for author, changes in sorted(changesByAuthor.iteritems()):
authorName = get_author_name( author );
content += ' ***** Changes By '+authorName+'*****\n\n'
for change in changes:
rawDate = change['date']
dateRepresentation = rawDate.strftime("%m/%d/%Y %I:%M:%S %p")
content += ' Date: '+ dateRepresentation+'\n\n'
path_change = change['paths']
path_attribute= change['Attribute_changes']
finalizedPathInformation = []
for single_change in path_change:
for single_output in path_attribute:
finalizedPathInformation.append(single_output+single_change)
content +=" " + str(finalizedPathInformation) + "\n"
我希望开始工作的是当路径中有多个路径时它会做
文件名:test.xml
目录位置:/Testforlder/
出于某种原因,它向我显示了一个内存错误。我想知道我是否可以更好地编写路径部分。这是我得到的错误。
content +=" " + str(finalizedPathInformation) + "\n" MemoryError
如果有帮助,现在这里是 xml 文件的一部分。
<log>
<logentry
revision="33185">
<author>glv</author>
<date>2012-08-06T21:01:52.494219Z</date>
<paths>
<path
action="M"
kind="file">/trunk/build.xml</path>
<path
kind="dir"
action="M">/trunk</path>
</paths>
<msg>PATCH_BRANCH:N/A
BUG_NUMBER:N/A
FEATURE_AFFECTED:N/A
OVERVIEW:N/A
Testing the system log.
</msg>
</log>
现在我将 nodeValue 保存在字典中,但由于某种原因,我无法获取 nodeValue 中的属性以查看它是否具有“dir”或“file”属性。我很确定我在某处做错了什么。任何建议或帮助将不胜感激和欢迎:)