IndexError:从XML文件解析元素时的列表索引

时间:2013-04-20 22:44:12

标签: python xml variables

我是python的新手但是我设法创建了一个解析器python程序,该程序调用基于Web的xml文件并将元素存储在数组中。然后读取包含xml元素的这些数组并将其发送到localhost数据库。

写入数据库时​​出现“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”变量是否为空/空,如果是,则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") 

1 个答案:

答案 0 :(得分: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