Heim >Backend-Entwicklung >Python-Tutorial >Detaillierte Erläuterung der Python-URL-Kodierungs- und URL-Spleißmethoden
Der Parameter von URL-Code muss Dictionary sein
name2=bbs.pythontab.com&name1=www.pythontab.com
entspricht dem Zusammenfügen von zwei URL-Parametern. Diese Verwendung ist Ähnlich wie http_build_query() in PHP, hier erfahren Sie nicht, wie Sie es in den meisten PHP verwenden. Wenn Sie interessiert sind, probieren Sie es selbst aus.
Funktion urlencode ändert nicht die ursprüngliche Kodierung der eingehenden Parameter, was bedeutet, dass die Kodierung der Post- oder Get-Parameter vor dem Aufruf angepasst werden muss .
Problem: Simulieren Sie jetzt Anfragen an Google und Baidu. Da Baidu die gb2312-Codierung verwendet und Google die utf8-Codierung verwendet, sind die URL-Codewerte der von den beiden Websites an die URL übermittelten Informationen wie folgt „Chinesische PythonTab-Website“ als Beispiel:
# coding: UTF-8 str = u'PythonTab中文网' str = str.encode('gb2312') d = {'name':str} q = urllib.urlencode(d) print q
Ergebnis:
name=PythonTab%D6%D0%CE%C4%CD%F8
Hinweis: Der Parameter von urlencode muss Dictionary sein
Der URL-Code in Django ist ähnlich, die Methode ist wie folgt:
from django.utils.http import urlquote a = urlquote('PythonTab中文网') print a
GBK-Kodierung chinesischer Zeichen abrufen
Tatsächlich können Sie die Anführungszeichenfunktion von urllib verwenden, um das Chinesische in der URL umzuwandeln und das Chinesische in die GBK-Kodierung umzuwandeln. Die resultierende Codierung ist eine URL, die dem URI-Standard entspricht.
>>> import urllib >>> a = "PythonTab中文网" >>> a 'PythonTab\xe4\xb8\xad\xe6\x96\x87\xe7\xbd\x91' >>> urllib.quote(a) 'PythonTab%E4%B8%AD%E6%96%87%E7%BD%91' >>>
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Python-URL-Kodierungs- und URL-Spleißmethoden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!