ホームページ >バックエンド開発 >Python チュートリアル >urllibとurllib2を使ってhttp GET/POSTにアクセスするPython学習の詳細説明
まえがき
この記事では、主に Python が http の GET/POST アクセスを学習する方法を紹介します。urllib と urllib2 を使用すると、http アクセスを簡単に実装できます。以下に、詳細な紹介を見てみましょう。
例の詳細な説明
以下は、http://127.0.0.1/cgi/testに対する GET および POST を実装する例です。
通常の意味でクエリを使用します。 . string
POST accepts json
の学習を推奨 このうち、
##のRequestメソッドであれば、 #urllib2 は 1 つのパラメータのみを受け取ります。GET メソッドですが、2 つのパラメータを取る場合、それは http の POST メソッドであり、2 番目のパラメータは POST の内容になります。 #!/usr/bin/env python
import urllib
import urllib2
import json
url_base = "http://127.0.0.1/ cgi/test"
#GET
try:
query = {'test':'yes','name':'colin'}
query_string = urllib.urlencode(query)
url = url_base "?" query_string
print "GET", url
print "Web 出力:"
print urllib2.urlopen(urllib2.Request(url) ).read()
例外 err:
print err
#post
try:
url = url_base
print "POST", url
a = {'k1':123, 'k2': '456', 'k3':'test'}
json_s = json.dumps(a)
print "POST input:"
print json_s
print "web Output:"
print urllib2.urlopen(urllib2.Request(url, json_s)).read()
excel以下に示すように、err:
print err
echo -e 'Content-type:text/plain\r'
echo -e '\r'
if [ X"$ REQUEST_METHOD" = X"POST" ];then
jq . | sed -nr '/:/!d; s/^([ \t]*"[^"] "[ \t]* ):/\ 1=/;s/,[ \t]*$//;s/"//g;p'
else
echo ${QUERY_STRING} | awk 'BEGIN{RS="& "}1'
fi
GET http://127.0.0.1/v1/lic/test?test=yes&name=colin
web出力:
test=yes
name=colin
POST http://127.0.0.1/v1/lic/test
POST 入力:
{"k3": "テスト", "k2": "456", "k1": 123}
web 出力:
k3= テスト
k2= 456
k1= 123
以上がurllibとurllib2を使ってhttp GET/POSTにアクセスするPython学習の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。