So verwenden Sie die Funktion urllib.parse.quote() zum Codieren von URLs in Python 3.x

WBOY
Freigeben: 2023-07-31 22:46:56
Original
2796 Leute haben es durchsucht

Verwenden Sie die Funktion urllib.parse.quote() zum Codieren von URLs in Python 3.x

Bei der Entwicklung von Netzwerkanwendungen stoßen wir häufig auf Situationen, in denen URLs codiert werden müssen. Dies liegt an der begrenzten Anzahl zulässiger Zeichen in URLs Parameter, die wir übergeben müssen, können Sonderzeichen enthalten. Das Modul urllib.parse in Python stellt die Funktion quote() bereit, mit der illegale Zeichen in URLs in zulässige URL-Zeichenfolgen kodiert werden können. In diesem Artikel wird anhand von Codebeispielen vorgestellt, wie die Funktion urllib.parse.quote() zum Codieren von URLs in Python 3.x verwendet wird.

Zuerst müssen wir das Modul urllib.parse importieren, indem wir die folgende Codezeile verwenden:

from urllib.parse import quote
Nach dem Login kopieren

Als nächstes können wir die Funktion quote() verwenden, um die URL-Zeichenfolge zu kodieren. Das folgende Codebeispiel kodiert eine URL, die Sonderzeichen enthält, und gibt das kodierte Ergebnis aus:

url = 'http://www.example.com/?keyword=hello world'
encoded_url = quote(url)
print(encoded_url)
Nach dem Login kopieren

Führen Sie den obigen Code aus und die Ausgabe sieht wie folgt aus:

http%3A//www.example.com/%3Fkeyword%3Dhello%20world
Nach dem Login kopieren

Wie Sie sehen können, entfernt die Funktion quote() illegale Zeichen in der URL Durch die entsprechende Codierungszeichenfolge ersetzt. Die Funktion

quote() kann auch einen optionalen sicheren Parameter empfangen, um Zeichen anzugeben, die nicht codiert werden müssen. Bei der URL-Kodierung werden standardmäßig nur nicht-alphanumerische Zeichen kodiert. Wenn Sie möchten, dass einige Sonderzeichen nicht codiert werden, können Sie sie zum sicheren Parameter hinzufügen. Zum Beispiel:

url = 'http://www.example.com/?query=python 3.x'
encoded_url = quote(url, safe='/:')
print(encoded_url)
Nach dem Login kopieren

Führen Sie den obigen Code aus. Die Ausgabe lautet wie folgt:

http://www.example.com/?query=python%203.x
Nach dem Login kopieren

Sie können sehen, dass diese Zeichen während der Codierung nicht ersetzt werden, da wir die Zeichen „/“ und „:“ im sicheren Parameter angegeben haben.

Darüber hinaus stellt die Funktion quote() auch zwei Kodierungsmodi bereit, die standardmäßig verwendet werden, und es können auch andere Kodierungsmethoden angegeben werden. Beispiel:

url = 'http://www.example.com/?query=你好'
encoded_url = quote(url, encoding='gbk')
print(encoded_url)
Nach dem Login kopieren

Führen Sie den obigen Code aus. Das Ausgabeergebnis lautet wie folgt:

http%3A%2F%2Fwww.example.com%2F%3Fquery%3D%B2%E2%CA%D4
Nach dem Login kopieren

Sie können sehen, dass sich das Codierungsergebnis vom obigen Beispiel unterscheidet, da wir die GBK-Codierung verwenden.

Zusammenfassend lässt sich sagen, dass die Funktion urllib.parse.quote() in Python 3.x problemlos URLs kodieren und illegale Zeichen in zulässige URL-Zeichenfolgen umwandeln kann. Ich glaube, dass die Leser durch die Einführung und die Codebeispiele dieses Artikels gelernt haben, wie man diese Funktion zum Codieren von URLs in Python verwendet. In der tatsächlichen Entwicklung können wir die URL nach Bedarf flexibel codieren, um sicherzustellen, dass die übergebenen Parameter das Format und die Semantik der URL nicht zerstören.

Referenz:

  • [Offizielle Python-Dokumentation – urllib.parse](https://docs.python.org/3/library/urllib.parse.html)

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Funktion urllib.parse.quote() zum Codieren von URLs in Python 3.x. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage