完美解决indexerror: list index out of range-爱代码爱编程
完美解决IndexError: list index out of range
报错问题
之前在工作中遇到过这个坑,记录一下问题以及解决方法,不一定针对所有情况都能用,但是可以供大家参考。
问题描述如下:
IndexError: list index out of range
索引错误:列表索引超出范围
原因主要有两个:
下标超出范围
list是空的,没有一个元素
解决方法
用异常捕获Xpath定位,当报错的时候捕获异常并把title和url赋值为None:
import requests
from lxml import etree
text = requests.get("https://www.baidu.com").content.decode()
html = etree.HTML(text)
div_divst = html.xpath("//div")
for div in div_divst:
try:
title = div.xpath("@title")[0]
url = div.xpath("@url")[0]
except:
title = None
url = None
PS
有问题评论区留言即可