2015年8月14日金曜日

[Python][HTTP]POST

POST するデータを urllib.urlencode() で作成し、urllib2.Request() で POST 先 URL とまとめてからアクセスする。
# -*- coding: utf-8 -*-
## POST
import urllib
import urllib2

# POST データ作成
req = {'field1':'abcde', 'field2':'12334'}
print req
params = urllib.urlencode(req)
print params
url = 'http://localhost/cgi-bin/python/postResult.cgi'
request = urllib2.Request(url, params)
f = urllib2.urlopen(request)
data = f.read()
print data
実行結果
$ python test03.py
{'field2': '12334', 'field1': 'abcde'}
field2=12334&field1=abcde
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>POST Result</title>
</head>
<body>
<h1>POST Result</h1>
Field1: abcde<br/>
Field2: 12334<br/>
</body>
</html>

0 件のコメント:

コメントを投稿