Wie man Urll in Python verwendet

Wie man Urll in Python verwendet

Python enthält ein Modul mit dem Namen Urlib Für die Behandlung von URL-bezogenen Aufgaben des gleichmäßigen Ressourcenlocators (URL). Dieses Modul ist standardmäßig in Python 3 installiert und holt URLs verschiedener Protokolle über die urlopen () Funktion. Urllib kann für viele Zwecke verwendet werden, z. B. für das Lesen von Website -Inhalten, das Erstellen von HTTP- und HTTPS -Anfragen, das Senden von Anforderungsüberschriften und das Abrufen von Antwortheadern. Der Urlib Das Modul enthält viele andere Module für die Arbeit mit URLs, wie z Urlib.Anfrage, Urlib.analysieren, Und Urlib.Fehler, unter anderen. In diesem Tutorial wird Ihnen angezeigt, wie Sie das Urllib -Modul in Python verwenden.

Beispiel 1: Öffnen und Lesen von URLs mit Urllib.Anfrage

Der Urlib.Anfrage Das Modul enthält die Klassen und Methoden, die zum Öffnen und Lesen einer URL erforderlich sind. Das folgende Skript zeigt, wie man verwendet Urlib.Anfrage Modul zum Öffnen einer URL und zum Lesen des Inhalts der URL. Hier das urlopen () Methode wird verwendet, um die URL zu öffnen, “https: // www.LinuxHint.com/.Wenn die URL gültig ist, wird der Inhalt der URL in der benannten Objektvariablen gespeichert Antwort. Der lesen() Methode der Antwort Objekt wird dann verwendet, um den Inhalt der URL zu lesen.

#!/usr/bin/env python3
# Anforderungsmodul von UrlliB importieren
UrlliB importieren.Anfrage
# Öffnen Sie die spezifische URL zum Lesen mit urlopen ()
Antwort = urllib.Anfrage.urlopen ('https: // www.LinuxHint.com/')
# Drucken Sie die Antwortdaten der URL
print ("Die Ausgabe der URL ist: \ n \ n", Antwort.lesen())

Ausgang

Die folgende Ausgabe wird nach dem Ausführen des Skripts angezeigt.

Beispiel 2: Parsen und unverzichtete URLs mit Urllib.analysieren

Der Urlib.analysieren Das Modul wird hauptsächlich verwendet, um die verschiedenen Komponenten einer URL zusammenzuteilen oder zusammenzuschließen. Das folgende Skript zeigt verschiedene Verwendungen der Urlib.analysieren Modul. Die vier Funktionen von Urlib.analysieren In dem folgenden Skript wird verwendet Urlparse, Urlunparse, URLSPLIT, Und urlunsplit. Der Urlparse Modul funktioniert wie URLSPLIT, und das Urlunparse Modul funktioniert wie urlunsplit. Es gibt nur einen Unterschied zwischen diesen Funktionen; das ist, Urlparse Und Urlunparse enthalten einen zusätzlichen Parameter mit dem Namen 'Parameter'Zum Aufteilen und der Verbindungsfunktion. Hier die URL 'https: // linuxhint.com/play_sound_python/'wird zum Aufteilen und Verbinden der URL verwendet.

#!/usr/bin/env python3
# Parse -Parse -Modul der UrlliB importieren
UrlliB importieren.analysieren
# URL analysieren mit urlparse ()
urlparse = urllib.analysieren.urlparse ('https: // linuxhint.com/play_sound_python/')
print ("\ n der URL -Ausgabe nach Parsing: \ n", Urlparse)
# URL mit urlunparse beitreten ()
urlunparse = urllib.analysieren.Urlunparse (Urlparse)
print ("\ nDie Verbindungsausgabe von Parsing url: \ n", Urlunparse)
# URL analysieren mit URLSPLIT ()
urlsplit = urllib.analysieren.urlsplit ('https: // linuxhint.com/play_sound_python/')
print ("\ n der URL -Ausgabe nach Aufteilung: \ n", urlsplit)
# URL mit urlunSplit () bei der URL beitreten ()
urlunSplit = urllib.analysieren.urlunsplit (urlsplit)
print ("\ nThe Joining -Ausgabe von Teilen von URL: \ n", urlunsplit)

Ausgang

Die folgenden vier Ausgänge werden nach dem Ausführen des Skripts angezeigt.

Beispiel 3: Reading Response Header von HTML mit Urllib.Anfrage

Das folgende Skript zeigt, wie die verschiedenen Teile des Antwortheaders der URL über die abgerufen werden können die Info() Methode. Der Urlib.Anfrage Modul zum Öffnen der URL 'https: // linuxHint.com/python_pause_user_input/,'Und die Header -Informationen dieser URL werden über die gedruckt die Info() Methode. Der nächste Teil dieses Skripts zeigt Ihnen, wie Sie jeden Teil des Headers getrennt lesen können. Hier das Server, Datum, Und Inhaltstyp Die Werte werden getrennt gedruckt.

#!/usr/bin/env python3
# Anforderungsmodul von UrlliB importieren
UrlliB importieren.Anfrage
# Öffnen Sie die URL zum Lesen
urlresponse = urllib.Anfrage.urlopen ('https: // linuxhint.com/python_pause_user_input/'))
# Reaktionsüberwachungsausgabe der URL
drucken (urlresponse.die Info())
# Headerinformationen separat lesen
print ('response server =', urlresponse.info () ["Server"])
print ('Antwortdatum is =', urlresponse.info () ["Datum"])
print ('Antwortinhaltstyp is =', urlresponse.info () ["Content-Typ"]))

Ausgang

Die folgende Ausgabe wird nach dem Ausführen des Skripts angezeigt.

Beispiel 4: Lesen der URL -Antworten nach Zeile

Eine lokale URL -Adresse wird im folgenden Skript verwendet. Hier eine Test -HTML -Datei mit dem Namen prüfen.html wird am Standort erstellt, var/www/html. Der Inhalt dieser Datei wird über die Zeile von Zeile gelesen für Schleife. Der Streifen() Die Methode wird dann verwendet, um den Raum von beiden Seiten jeder Zeile zu entfernen. Sie können jede HTML -Datei vom lokalen Server verwenden, um das Skript zu testen. Der Inhalt der prüfen.html Die in diesem Beispiel verwendete Datei ist unten angegeben.

prüfen.HTML:



Testseite


#!/usr/bin/env python3
# UrlliB importieren.Anforderungsmodul
UrlliB importieren.Anfrage
# Öffnen Sie eine lokale URL zum Lesen
Antwort = urllib.Anfrage.urlopen ('http: // localhost/test.html ')
# Lesen Sie die URL aus der Antwort
print ('URL:', Antwort.Geturl ())
# Lesen Sie die Antwort des Antworttextes nach Zeile
print ("\ nReading Inhalt:")
Für Zeile als Antwort:
Druck (Linie.Streifen())

Ausgang

Die folgende Ausgabe wird nach dem Ausführen des Skripts angezeigt.

Beispiel 5: Ausnahmebehandlung mit Urllib.Fehler.Urlerror

Das folgende Skript zeigt, wie die Verwendung der Verwendung Urlerror in Python über die Urlib.Fehler Modul. Jede URL -Adresse kann als Eingabe vom Benutzer angenommen werden. Wenn die Adresse nicht vorhanden ist, dann ein Urlerror Die Ausnahme wird erhöht und der Grund für den Fehler wird gedruckt. Wenn der Wert der URL in einem ungültigen Format ist, dann a ValueError wird erhöht und der benutzerdefinierte Fehler wird gedruckt.

#!/usr/bin/env python3
# Notwendige Module importieren
UrlliB importieren.Anfrage
UrlliB importieren.Fehler
# versuchen Sie Block, um eine URL zum Lesen zu öffnen
versuchen:
URL = Eingabe ("Geben Sie eine URL -Adresse ein:")
Antwort = urllib.Anfrage.Urlopen (URL)
Druck (Antwort.lesen())
# Fangen Sie den URL -Fehler auf, der beim Öffnen einer URL generiert wird
außer UrlliB.Fehler.Urlerror als E:
print ("URL -Fehler:", e.Grund)
# Fangen Sie den ungültigen URL -Fehler an
außer ValueError:
print ("Geben Sie eine gültige URL -Adresse ein")

Ausgang

Das Skript wird im folgenden Screenshot dreimal ausgeführt. In der ersten Iteration wird die URL -Adresse in einem ungültigen Format angegeben, wobei ein ValueError generiert wird. Die in der zweite Iteration angegebene URL. Eine gültige URL -Adresse ist in der dritten Iteration angegeben, sodass der Inhalt der URL gedruckt wird.

Beispiel 6: Ausnahmebehandlung mit Urllib.Fehler.HTTP Fehler

Das folgende Skript zeigt, wie die Verwendung der Verwendung HTTP Fehler in Python über die Urlib.Fehler Modul. Ein Htmlerror generiert, wenn die angegebene URL -Adresse nicht existiert.

#!/usr/bin/env python3
# Notwendige Module importieren
UrlliB importieren.Anfrage
UrlliB importieren.Fehler
# Nehmen Sie eine gültige URL ein
URL = Eingabe ("Geben Sie eine URL -Adresse ein:")
# Anfrage für die URL senden
request = urllib.Anfrage.Anfrage (URL)
versuchen:
# Versuchen Sie, die URL zu öffnen
Urlib.Anfrage.urlopen (Anfrage)
print ("URL existieren")
außer UrlliB.Fehler.Httperror als e:
# Drucken Sie den Fehlercode und den Fehlergrund
print ("Fehlercode:%d \ nerror Grund:%s"%(e).Code, e.Grund))

Ausgang

Hier wird das Skript zweimal ausgeführt. Die erste URL. Die zweite URL HTTP Fehler.

Abschluss

In diesem Tutorial wurde viele wichtige Verwendungszwecke der Diskussionen erörtert Urlib Modul mit verschiedenen Beispielen, mit denen die Leser die Funktionen dieses Moduls in Python kennenlernen können.