Python and urllib2: how to make a GET request with parameters

前端 未结 3 1822
花落未央
花落未央 2021-01-31 08:18

I\'m building an \"API API\", it\'s basically a wrapper for a in house REST web service that the web app will be making a lot of requests to. Some of the web service calls need

3条回答
  •  陌清茗
    陌清茗 (楼主)
    2021-01-31 08:39

    Is urllib.urlencode() not enough?

    >>> import urllib
    >>> urllib.urlencode({'foo': 'bar', 'bla': 'blah'})
    foo=bar&bla=blah
    

    EDIT:

    You can also update the existing url:

      >>> import urlparse, urlencode
      >>> url_dict = urlparse.parse_qs('a=b&c=d')
      >>> url_dict
      {'a': ['b'], 'c': ['d']}
      >>> url_dict['a'].append('x')
      >>> url_dict
      {'a': ['b', 'x'], 'c': ['d']}
      >>> urllib.urlencode(url_dict, True)
      'a=b&a=x&c=d'
    

    Note that parse_qs function was in cgi package before Python 2.6

    EDIT 23/04/2012:

    You can also take a look at python-requests - it should kill urllibs eventually :)

提交回复
热议问题