Heim  >  Artikel  >  Backend-Entwicklung  >  Wie extrahiere ich Abfrageparameter aus einer URL in Python?

Wie extrahiere ich Abfrageparameter aus einer URL in Python?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-28 13:29:02343Durchsuche

How to Extract Query Parameters from a URL in Python?

Parameter von einer URL abrufen

Beim Umgang mit URLs ist es häufig erforderlich, bestimmte Werte zu extrahieren, die mit den Abfrageparametern verknüpft sind. Dieser Artikel soll auf diese Anforderung eingehen und Sie durch den Prozess des effektiven Parsens dieser Parameter führen.

In Django kann das enthaltene Anforderungsobjekt zum Abrufen dieser Parameter verwendet werden. Allerdings liefert die Methode self.request.get('some_key') möglicherweise nicht das erwartete Ergebnis. Stattdessen befassen wir uns mit den integrierten Funktionen von Python und stellen vielseitige Lösungen zum Extrahieren dieser Werte vor.

Python 2

Für Python 2 bietet das Modul urlparse eine präzise Möglichkeit, URLs zu analysieren:

<code class="python">import urlparse

url = 'https://www.example.com/some_path?some_key=some_value'
parsed = urlparse.urlparse(url)
captured_value = urlparse.parse_qs(parsed.query)['some_key'][0]

print captured_value</code>

Python 3

In Python 3 bietet das Modul urllib.parse eine ähnliche Funktionalität:

<code class="python">from urllib.parse import urlparse
from urllib.parse import parse_qs

url = 'https://www.example.com/some_path?some_key=some_value'
parsed_url = urlparse(url)
captured_value = parse_qs(parsed_url.query)['some_key'][0]

print(captured_value)</code>

In beiden Fällen gibt die Funktion parse_qs eine Liste zurück. Um den ersten Wert abzurufen, indizieren wir die Liste mit dem Index [0]. Das Ergebnis ist der extrahierte Wert, der dem Abfrageparameter some_key zugeordnet ist.

Das obige ist der detaillierte Inhalt vonWie extrahiere ich Abfrageparameter aus einer URL in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn