2016-01-02 49 views
6

在python中向HTTP/1和HTTP/2发出请求有任何区别。python 2.7中的HTTP 2请求

我可以让HTTP/1.x的调用在python一样

url = 'http://someURL' 
values = {'param1' : 'key', 
      'param2' : 'key2'} 
data = urllib.urlencode(values) 
print data 
req = urllib2.Request(url, data) 
response = urllib2.urlopen(req) 
the_page = response.read() 
print the_page 

是蟒蛇支持使得HTTP/2默认,或者我应该付额外的费用。

+1

我*几乎可以肯定*它使用HTTP2,你可以检查文档。但我认为你最好使用'requests'库。 ('pip安装请求')。他们说'urllib2'被彻底打破了......' –

+2

仅供参考:https://hyper.readthedocs.org/en/latest/ –

+0

@PadraicCunningham这是'requests'的作者。 –

回答

4

正如其他人在问题的评论中提到的requests库不支持HTTP/2。

requestsdocumentation

请求允许您将有机,青草喂养HTTP/1.1请求,而不需要手工劳动。

截至目前唯一的HTTP/2客户端的Python我所知道的是hyper,从文档报价:

支持Python 3.4和Python 2.7.9,并能讲HTTP/2和HTTP/1.1