python怎样模拟发送CGI表单(METHOD=POST)?
我需要通过 POST 表单获取网页,有什么代码能简单做到吗?
是的,这里有一个使用 urllib.request 的简单例子:
#!/usr/local/bin/pythonimporturllib.request
# build the query string
qs="First=Josephine&MI=Q&Last=Public"
# connect and send the server a path
req=urllib.request.urlopen("http://www.some-server.out-there"
"/cgi-bin/some-cgi-script",data=qs)
withreq:
msg,hdrs=req.read(),req.info()
注意,通常在百分号编码的 POST 操作中,查询字符串必须使用 urllib.parse.urlencode()
处理一下。举个例子,如果要发送 name=GuySteele,Jr.
的话:
>>> importurllib.parse>>> urllib.parse.urlencode({"name":"Guy Steele, Jr."})
"name=Guy+Steele%2C+Jr."
参见
查看 HOWTO 使用 urllib 包获取网络资源 获取更多示例。
以上是 python怎样模拟发送CGI表单(METHOD=POST)? 的全部内容, 来源链接: utcz.com/z/520596.html