ホームページ  >  記事  >  バックエンド開発  >  PythonのurlencodeエンコードとURLスプライシングの方法を詳しく解説

PythonのurlencodeエンコードとURLスプライシングの方法を詳しく解説

高洛峰
高洛峰オリジナル
2017-03-17 16:28:315918ブラウズ

urlencode 呼び出しメソッド

urlencode のパラメータは Dictionary

name2=bbs.pythontab.com&name1=www.pythontab.com

この使用法は、PHP の http_build_query() に似ています。 . 興味があれば、自分で調べてみてください。

urlencode エンコーディング

関数 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 ConvertString

実際、urllib の quote 関数を使用して URL 内の中国語を変換し、中国語を GBK エンコードに変換することができます。結果のエンコードは、URI 標準に準拠した URL になります。

りー


以上がPythonのurlencodeエンコードとURLスプライシングの方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。