@myles
2019-01-11T16:01:52.000000Z
字数 1686
阅读 723
未分类
通过urlib.request.urlopen()函数方法来构建http请求
urllib.request.urlopen(url, data=None, [timeout,] cafile=None, capath=None, cadefault=False, context=None)
from urllib import requesturl = 'http://httpbin.org/get'response = request.urlopen(url)print(response.read().decode('utf-8'))
from urllib import parse,requesturl = 'http://httpbin.org/post'form_data = {'key':'value'}data = bytes(parse.urlencode(form_data),encoding='utf-8')response = request.urlopen(url,data)response_text = response.read().decode('utf-8')print(response_text)
from urllib import requesturl = 'http://httpbin.org/get'response = request.urlopen(url, timeout = 1)print(response.read().decode('utf-8'))
from urllib import request, errorimport socketurl = 'http://httpbin.org/get'try:response = request.urlopen(url, timeout = 0.1)except error.URLError as e:if isinstance(e.reason, socket.timeout):print("Time Out ...")
from urllib import requesturl = 'http://httpbin.org/get'response = request.urlopen(url)print(type(response))
<class 'http.client.HTTPResponse'>
from urllib import requesturl = 'http://httpbin.org/get'response = request.urlopen(url)print(response.status)print(response.getheaders())#print(response.getheaders['Server'])
200
[('Connection', 'close'), ('Server', 'gunicorn/19.9.0'), ('Date', 'Fri, 11 Jan 2019 15:30:00 GMT'), ('Content-Type', 'application/json'), ('Content-Length', '233'), ('Access-Control-Allow-Origin', '*'), ('Access-Control-Allow-Credentials', 'true'), ('Via', '1.1 vegur')]
from urllib import requesturl = 'http://httpbin.org/ip'response = request.urlopen(url)print(response.read().decode('utf-8'))
{
"origin": "60.166.83.51"
}