-1

1 つのディレクトリ内のすべての xml ファイルを解析するプログラムを作成しようとしています。コードは正常に動作しているように見えますが、ファイルが問題なく解析される場合があり (ファイルが単独の場合、または最初に解析される場合)、同じファイルを解析すると ""IndexError: list index out of range" が返されることがあります。

from xml.dom.minidom import parse, parseString
import os

liste=open('oup_list_hybrid.txt','a')
for r,d,f in os.walk('C:/Users/bober/Documents/Analyse_citation_crossref/'):
    for files in f:
        if files.endswith(".xml"):
            print files
            dom=parse(files)
            for element in dom.getElementsByTagName('record'):
                rights = element.getElementsByTagName('dc:rights')
                doi = element.getElementsByTagName('dc:identifier')
                date= element.getElementsByTagName('dc:date')
                try:
                    valeurrights=rights[0].firstChild.nodeValue
                    valeurdoi=doi[1].firstChild.nodeValue
                    valeurdate=date[0].firstChild.nodeValue
                    resultat=valeurrights+';'+valeurdoi+';'+valeurdate+'\n'
                    liste.write(resultat)
                except IndexError:
                    print 'pb avec'+files
                    continue


    break
liste.close()

ここで何が間違っていますか?助けてくれてありがとう!

4

1 に答える 1