Python 2 で urllib.unquote() 関数を使用して URL をデコードする方法xx
ネットワーク開発のプロセスでは、URL のエンコードとデコードが必要になることがよくあります。 URL エンコードは、送信および保存のために特殊文字を ASCII コード表現に変換します。ネットワーク プログラミングに Python を使用する場合、urllib モジュールによって提供される unquote() 関数を通じて URL をデコードできます。
unquote() 関数は、urllib モジュールのサブモジュール urllib2 に属し、URL 内の特殊文字を元の形式にデコードするために使用されます。 Python 2.x で unquote() 関数を使用するには、まず対応するモジュールをインポートする必要があります。以下は具体的なコード例です:
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
上記のコードを実行すると、次の結果が表示されます:
解码前的 URL: http://www.example.com/%E4%B8%AD%E6%96%87%E7%BD%91%E7%AB%99 解码后的 URL: http://www.example.com/中文网站
デコード前の URL にはエンコードされた中国語の文字が含まれています。unquote() 関数を使用して、デコードされて正しい結果が得られました。
Python 2.x では、URL 全体をデコードしたい場合は、urllib.unquote() 関数を使用する必要があることに注意してください。 URL 内のパラメータをデコードするだけの場合は、urlparse.parse_qs() 関数を使用できます。
次は、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)
上記のコードを実行すると、次の結果が表示されます:
解码前的参数:name = 中文 , age = 18
上記のコード例を通じて、次のことがわかります。 Python 2.x で urllib.unquote() 関数を使用して URL をデコードするのは非常に簡単です。URL を簡単にデコードできるため、ネットワーク プログラミングでの URL の処理と使用が容易になります。
以上がurllib.unquote() 関数を使用して Python 2.x で URL をデコードする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。