What is the difference between urllib and urllib2 modules of Python?
You might be intrigued by the existence of two separate URL modules in Python -
urllib2. Even more intriguing: they are not alternatives for each other. So what is the difference between
urllib2, and do we need them both?
urllib2 are both Python modules that do URL request related stuff but offer different functionalities. Their two most significant differences are listed below:
urllib2can accept a
Requestobject to set the headers for a URL request,
urllibaccepts only a URL. That means, you cannot masquerade your User Agent string etc.
urlencodemethod which is used for the generation of GET query strings,
urllib2doesn't have such a function. This is one of the reasons why
urllibis often used along with
For other differences between
urllib2refer to their documentations, the links are given in the References section.
Tip: if you are planning to do HTTP stuff only, check out httplib2, it is much better than httplib or urllib or urllib2.
- What is User Agent?
- What is the difference between GET and POST request methods?
- What is HTTP?