2017-05-20 4 views
0

Ich habe ein Python (3.6) Skript, das als Webspider läuft. Es packt den Inhalt einer Seite, extrahiert die Links und crawlt sie. Es verwendet lxml.html die Links zu bearbeiten, zu importierenWie behandelt man lxml-Fehler, ohne das gesamte Modul zu importieren?

from lxml import html 

mit Ich versuche, individuelle Antworten zu jedem Fehler zu erstellen, dass sie gegen während des Laufens kommen können. Zurzeit handle ich mit Unicode-, SSL-, Redirect-, Connection- und ContentDecode-Fehlern. Ich stoße sehr auf lxml.etree.XMLSyntaxError und lxml.etree.XMLParseError. Ich habe versucht, sie über Ausnahme-Blöcke zu übergeben, aber es stoppt immer, wenn es in NameError: name 'lxml' is not defined läuft, da ich nur lxml.html anstelle des ganzen Moduls importiere.

Gibt es eine Möglichkeit, dass ich den Fehler (s) abfangen kann, ohne das gesamte Modul zu importieren?

Antwort

0

Sie können auf die lxml-Fehler nur durch etree.(Error) zugreifen, dh. etree.XMLSyntaxError und etree.ParseError.

from lxml import etree 

lxml hat auch a nice page jedes Objekt in dem Modul etree Detaillierung.

Verwandte Themen