A, Python2
httplib
Description: httplib implements HTTP and HTTPS client protocols, generally do not directly use in python to use its http achieve a higher level of package modules (urllib, urllib2).
httplib achieve http request
import httplib
host = 'www.baidu.com' # Note: the protocol can not be put
port = 80
# Get HTTPConnection objects
conn = httplib.HTTPConnection(host, port)
# Initiation request
conn.request("GET", "/")
# Get Return value
res = conn.getresponse()
print res.status # status code
print res.read () # returns the result
urllib、urllib2
Introduction: urllib urllib2 and accept the modules are requested URL, but can accept a urllib2 Request instance of the class to set the URL request headers, can accept only the urllib URL.
urllib initiate a request
Import the urllib baidu = urllib.urlopen ( ' http://www.baidu.com ' ) Print baidu.read () returns the result read # Print baidu.geturl () # acquisition request URL
Print baidu.getcode () Gets the state # code
baidu.close ()
urllib be url encoded
import urllib d = { "$count":"count", "$limit":"limit", "$offset":"offset", "$filter":None, } print urllib.urlencode(d)
结果:%24offset=offset&%24limit=limit&%24filter=None&%24count=count
See detailed usage
urllib2
import json import urllib import urllib2 #get response data = json.dumps(body) conn = urllib2.Request(url, data, header) res = urllib2.urlopen(conn) print res print res.read()
Two, python3
urllib
Description: Python3
There are also urllib
and urllib3
two libraries, which urllib
is almost Python2
in urllib
and urllib2
a set of two modules, so our most popular urllib
modules, and urllib3
then as an expansion module.
urllib initiate a request
import urllib from urllib import request res = request.urlopen("http://www.baidu.com") print(res.read())
urllib be url encoded
import urllib from urllib import parse d = {"a":"1","b":"2"} parse.urlencode(d)
结果:'a=1&b=2'
See: