urlencode のパラメータは Dictionary
name2=bbs.pythontab.com&name1=www.pythontab.com
この使用法は、PHP の http_build_query() に似ています。 . 興味があれば、自分で調べてみてください。
関数 urlencode は、受信パラメーターの元のエンコーディングを変更しません。つまり、呼び出し前に post パラメーターまたは get パラメーターのエンコーディングを調整する必要があります。
質問: ここで Google と baidu へのリクエストをシミュレートします。baidu は gb2312 エンコーディングを使用し、google は utf8 エンコーディングを使用するため、2 つのサイトによって URL に送信される中国語パラメータの urlencode 値は異なります。以下は「PythonTab Chinese Network」です。 " 例:
# coding: UTF-8 str = u'PythonTab中文网' str = str.encode('gb2312') d = {'name':str} q = urllib.urlencode(d) print q
結果:
name=PythonTab%D6%D0%CE%C4%CD%F8
注: urlencode のパラメータは Dictionary
django は urlencode と同様で、メソッドは次のとおりです:
from django.utils.http import urlquote a = urlquote('PythonTab中文网') print a
中国語の GBK エンコーディングを取得します文字
実際、urllib の quote 関数を使用して URL 内の中国語を変換し、中国語を GBK エンコードに変換することができます。結果のエンコードは、URI 標準に準拠した URL になります。
りー以上がPythonのurlencodeエンコードとURLスプライシングの方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。