如何在Python中发送请求

如何在Python中发送请求,python,request,Python,Request,我正在试图理解这个字符串是如何转换为GET或POST请求的?user=username&password=password&version=13我对请求没有太多经验,所以如果我说错了什么,请道歉 编辑 在Lennart Regebro安装请求包时,我用以下简单字符串解决了问题: r=请求。获取(“”, …参数={'user':'username','password':'password','version':'13'}) 您可以使用库发出请求。标准库中的函数在Python2和Python3中被

我正在试图理解这个字符串是如何转换为GET或POST请求的?user=username&password=password&version=13我对请求没有太多经验,所以如果我说错了什么,请道歉

编辑

在Lennart Regebro安装请求包时,我用以下简单字符串解决了问题:

r=请求。获取(“”, …参数={'user':'username','password':'password','version':'13'})


您可以使用库发出请求。标准库中的函数在Python2和Python3中被调用

然而,更好的是第三方库。对于请求,您可以这样做:

>>> r = requests.get("http://httpbin.org/get", 
...      params={'user': 'username', 'password': 'password', 'version': '13'})
首先:

>>> from urllib import urlencode
>>> s = {'user': 'fsp', 'pass': 'root'}
>>> urlencode(s)
'user=fsp&pass=root'
然后:

最后:

import urllib
urllib.urlopen(path)

更好地尝试请求。

有什么方法可以用socket实现吗?@user3104766是的,如果你愿意,你可以编写自己的库。还有一个问题,如果我使用例如s.connect(“www.example.com”),并且我想像www.example.com/?user=example&password=example&version=13那样完成这个url,我应该用urllib(或request)做什么?@user3104766你不应该。urllib和request都将为您处理套接字,而且它们会比您做得更好。您想打开一个URL并发出请求。为此,请使用urllib或urllib2,或urllib.request或requests。您不使用套接字,除非您正在实现自己的请求库,而您不是。因此我可以(使用请求)编写r=requests.get('www.example.com/?user=123&password=123&version=13'))
import urllib
urllib.urlopen(path)