私は現在、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」属性があるかどうかを確認できません。私はどこかで何か間違ったことをしていると確信しています。どんなアドバイスや助けも大歓迎です:)