Maison  >  Article  >  développement back-end  >  Comment utiliser la fonction urllib.unquote() pour décoder les URL en Python 2.x

Comment utiliser la fonction urllib.unquote() pour décoder les URL en Python 2.x

PHPz
PHPzoriginal
2023-07-30 16:34:541067parcourir

Comment utiliser la fonction urllib.unquote() pour décoder des URL en Python 2.x

Dans le processus de développement de réseau, nous avons souvent besoin d'encoder et de décoder des URL. Le codage URL convertit les caractères spéciaux en représentation de code ASCII pour la transmission et le stockage. Lorsque nous utilisons Python pour la programmation réseau, nous pouvons décoder les URL via la fonction unquote() fournie par le module urllib. La fonction

unquote() appartient au sous-module urllib2 du module urllib et est utilisée pour décoder les caractères spéciaux des URL dans leur forme originale. Dans Python 2.x, pour utiliser la fonction unquote(), vous devez d'abord importer le module correspondant. Voici un exemple de code spécifique :

import urllib
import urllib2

url = "http://www.example.com/%E4%B8%AD%E6%96%87%E7%BD%91%E7%AB%99"  # 包含编码的 URL

# 解码 URL
decoded_url = urllib.unquote(url)
print "解码前的 URL:", url
print "解码后的 URL:", decoded_url

L'exécution du code ci-dessus affichera les résultats suivants :

解码前的 URL: http://www.example.com/%E4%B8%AD%E6%96%87%E7%BD%91%E7%AB%99
解码后的 URL: http://www.example.com/中文网站

L'URL avant le décodage contient des caractères chinois codés après l'avoir décodée à l'aide de la fonction unquote(), le résultat correct.

Il est à noter que dans Python 2.x, si vous souhaitez décoder l'intégralité de l'URL, vous devez utiliser la fonction urllib.unquote(). Si vous avez uniquement besoin de décoder les paramètres de l'URL, vous pouvez utiliser la fonction urlparse.parse_qs().

Ce qui suit est un exemple de code qui décode les paramètres d'URL :

import urlparse

url = "http://www.example.com/?name=%E4%B8%AD%E6%96%87&age=18"  # 包含编码的参数

# 解码 URL 参数
parsed_url = urlparse.parse_qs(urlparse.urlparse(url).query)

# 获取解码后的参数
name = parsed_url["name"][0]
age = parsed_url["age"][0]

print "解码前的参数:name =", urllib.unquote(name), ", age =", urllib.unquote(age)

L'exécution du code ci-dessus affichera les résultats suivants :

解码前的参数:name = 中文 , age = 18

Grâce à l'exemple de code ci-dessus, nous avons appris à utiliser la fonction urllib.unquote() dans Python 2. x Le décodage des URL est très simple et peut être facilement mis en œuvre, ce qui nous permet de traiter et d'utiliser plus facilement les URL dans la programmation réseau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn