Behobener IndexError: Listenindex außerhalb des gültigen Bereichs

Gelöst (Python-Crawler durchläuft den Listenfehler) IndexError: Listenindex außerhalb des gültigen Bereichs











Fehlercode



Als ein Freund in der Fangruppe den Anfragen-Crawler verwenden und dann die von Xpath gefundene Datenliste durchsuchen wollte, trat ein Fehler auf (damals war ihm sehr kalt im Herzen und er kam zu mir um Hilfe, und dann hat ihm übrigens erfolgreich geholfen, es zu lösen. Machen Sie eine Aufzeichnung und hoffen Sie, mehr Freunden zu helfen, die auf diesen Fehler stoßen und ihn nicht lösen werden), der Fehlercode lautet wie folgt: :

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:
    title = div.xpath("@title")[0]
    url = div.xpath("@url")[0]


Die Fehlermeldung lautet wie folgt :

IndexError: list index out of range



Fehler Übersetzung



Übersetzung der Fehlermeldung :

Indexfehler: Listenindex außerhalb des gültigen Bereichs





Fehlergrund



Es gibt zwei Hauptgründe für den Listenindex außerhalb des gültigen Bereichs:

  • Eine Möglichkeit ist, dass der Index außerhalb des gültigen Bereichs liegt
  • Einer kann sein, dass die Liste leer ist und kein Element hat

Der Crawler-Code des Lüfters liegt offensichtlich daran, dass Xpath die Daten nicht findet, sodass die Liste leer ist und list[0] einen Fehler meldet.Freunde, bitte folgen Sie den Schritten unten, um es zu lösen! ! !





Lösung



Verwenden Sie eine Ausnahme, um die Xpath-Positionierung zu erfassen. Wenn ein Fehler gemeldet wird, erfassen Sie eine Ausnahme und weisen Sie den Titel und die URL None zu:

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


Hilfe

Dieser Artikel wurde in die Spalte „Abschied von Bug“ aufgenommen

In dieser Rubrik werden verschiedene schwierige Fehler in Studium und Beruf sowie verschiedene Probleme von kleinen Partnern in der Fangruppe erfasst Artikelformat: Fehlercode + Fehlerübersetzung + Fehlergrund + Lösung, einschließlich Programminstallation, Bedienung Wenn Sie Wenn Sie im Verlauf des Programms auf andere Probleme stoßen, können Sie nach dem Abonnieren der Kolumne + dem Blogger folgen, wenn Sie auf andere Probleme stoßen, privat chatten, um sie zu lösen! ! !

Ich denke du magst

Origin blog.csdn.net/yuan2019035055/article/details/126342734
Empfohlen
Rangfolge