Verwenden von Urlencode in Python

Fariba Laiq 10 Oktober 2023
  1. URL-Codierung eines Wörterbuchs mit urlencode() in Python
  2. URL-Codierung eines mehrwertigen Wörterbuchs mit urlencode() in Python
Verwenden von Urlencode in Python

URL steht für Uniform Resource Locator. URL ist einfach die Adresse einer Ressource im Web über die URL, die der Browser zum Laden der Webseite anfordert.

URL-Codierung ist der Prozess der Umwandlung von Zeichen in ein spezielles Format mit eingeschränktem US-ASCII, das von allen Browsern und Webservern allgemein akzeptiert wird.

Wenn eine URL Zeichen enthält, die nicht im ASCII-Satz definiert sind, werden diese Zeichen in ein gültiges ASCII-Format konvertiert. Es wird auch als Prozentcodierung bezeichnet, da wir häufig Prozentzeichen in URLs sehen.

Immer wenn wir eine Web-API aufrufen oder HTTP-Formulardaten übermitteln, verwenden wir eine codierte URL, um die Abfragezeichenfolge zu codieren. In Python können wir eine Abfragezeichenfolge mithilfe des Moduls urlib.parse URL-codieren, das außerdem eine Funktion urlencode() zum Codieren der Abfrage-String in URL enthält. Der Abfrage-String ist einfach eine Folge von Schlüssel-Wert-Paaren.

URL-Codierung eines Wörterbuchs mit urlencode() in Python

Wenn wir einen String mit der Funktion urlencode() URL-codieren wollen, können wir dies nicht direkt tun, da es keinen String als Argument akzeptiert. Wir können das Argument in Form eines Wörterbuchs übergeben. Dictionary ist ein Datentyp in Python, der die Daten in einem Schlüssel-Wert-Paar speichert.

Zum Beispiel haben wir eine Abfragezeichenfolge wie diese:

queryString = "name=" + "Jhon" + "&" + "age=" + "18"

Zuerst müssen wir es in einem Wörterbuchformat wie folgt schreiben:

queryString = {"name": "Jhon", "age": "18"}

Im folgenden Code müssen wir die Bibliothek urlib importieren und übergeben unseren Abfragestring an die Funktion urlencode() des Moduls parse der Bibliothek urlib. In der Ausgabe erhalten wir die erforderliche codierte URL.

In der Ausgabe hat die codierte URL die Form, dass readzeichen durch das Symbol + und das Symbol : durch das Symbol & ersetzt werden, da dies das Format der codierten URL der Abfragezeichenfolge ist.

Beispielcode:

# python 3.x
import urllib

queryString = {"name": "Jhon", "age": "18"}
urllib.parse.urlencode(queryString)

Ausgabe:

#python 3.x
'age=18&name=Jhon'

URL-Codierung eines mehrwertigen Wörterbuchs mit urlencode() in Python

Nehmen wir nun an, unsere Abfragezeichenfolge in Form eines Wörterbuchs enthält mehrwertige Daten wie ein Attribut namens Farben mit den Werten blue, pink und green, also ist es ein Attribut mit mehreren Werten. Wir können solche Wörterbücher auch in Python URL-codieren.

Die Funktion urlencode() akzeptiert ein optionales Argument doseq. Wenn wir seinen Wert auf True setzen, können wir Sonderzeichen in der Ausgabe vermeiden.

Beispielcode:

import urllib

queryString = {"jeans": "Bell Bottom", "colors": ["blue", "pink", "green"]}
urllib.parse.urlencode(queryString, doseq=True)

Ausgabe:

'jeans=Bell+Bottom&colors=blue&colors=pink&colors=green'
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

Verwandter Artikel - Python URL