0

私はPythonを初めて使用しますが、Webベースのxmlファイルを呼び出して配列内に要素を保存するパーサーpythonプログラムを作成できました。次に、xml 要素を含むこれらの配列が読み取られ、localhost データベースに送信されます。

配列の1つに含まれる要素が他の配列よりも少ないため、データベースに書き込むときに「IndexError」の問題が発生します。これは、このエラーが生成されることを意味します。xmlファイルに要素が存在しない場合、代わりに配列に文字列を追加できるようにする方法について誰か提案がありますか?

xml 要素を取得し、それを「stop_times」配列に割り当てるコード -

stop_times = []
for stop in event_main:
    stop_time = stop.getElementsByTagName("stop_time")[0]
    stop_times.append(stop_time)

「stop_time」変数がnull/空かどうかを確認することは可能ですか?もしそうなら、stop_timeは文字列「null」と等しいですか? どんな助けでも大歓迎です、カレン

編集:私の正しいコード(他の人に役立つかもしれません):

stop_times = []
for stop in event_main:
    try:
        stop_time = stop.getElementsByTagName("stop_time")[0].childNodes[0].nodeValue
        stop_times.append(stop_time)
    except IndexError: 
        stop_times.append("none") 
4

1 に答える 1

1

あなたが正しいことを理解していれば、これはあなたを助けるかもしれません。

stop_times = []
for stop in event_main:

    try:
        stop_time = stop.getElementsByTagName("stop_time")[0]
        stop_times.append(stop_time.firstChild.nodeValue)
    except IndexError:
        stop_times.append("none")
        break
于 2013-04-20T23:03:06.807 に答える