Python比urllib更好的网络API
我注意到在urllib中没有关闭连接的方法(关闭不起作用)。python有更好更健壮的网络API吗?Python比urllib更好的网络API,python,network-programming,Python,Network Programming,我注意到在urllib中没有关闭连接的方法(关闭不起作用)。python有更好更健壮的网络API吗? Urllib在完成urlopen后关闭连接本身,fp.close()只关闭保存检索到的信息的filebuffer: >>> import urllib >>> fp = urllib.urlopen('http://www.httpbin.org/ip') >>> fp.read() 0: '{"origin": "::ffff:92.24
Urllib在完成urlopen后关闭连接本身,fp.close()只关闭保存检索到的信息的filebuffer:
>>> import urllib
>>> fp = urllib.urlopen('http://www.httpbin.org/ip')
>>> fp.read()
0: '{"origin": "::ffff:92.242.181.219"}'
>>> fp.close()
有许多好的http库:
- -简易http客户端,围绕urlib2/httplib构建
- -非常轻的异步接口,主要用于进行简单的REST请求
- -最快和最强大的网络库,支持其他协议,还存在CULLS模块,可移植到和
- 我目前正在为这些库构建探查器:-还将进行速度和内存比较
- -grownup异步库
- -用于打开URL的传统库
- -HTTP协议客户端
>>> import urllib
>>> fp = urllib.urlopen('http://www.httpbin.org/ip')
>>> fp.read()
0: '{"origin": "::ffff:92.242.181.219"}'
>>> fp.close()
有许多好的http库:
- -简易http客户端,围绕urlib2/httplib构建
- -非常轻的异步接口,主要用于进行简单的REST请求
- -最快和最强大的网络库,支持其他协议,还存在CULLS模块,可移植到和
- 我目前正在为这些库构建探查器:-还将进行速度和内存比较
- -grownup异步库
- -用于打开URL的传统库
- -HTTP协议客户端
Urlgrabber是urllib的高速重写,支持高级HTTP下载功能 urllib的问题并非只有你一个人。Python社区已经想出了很少的替代方案 试试这里: 请求是urllib上的sane API
Urlgrabber是urllib的高速重写,支持高级HTTP下载功能 因为还没有提到:很好(尽管它的一个优点是重用持久(保持活动)连接,而不是关闭它们) 至于关闭连接:你到底想要实现什么
如果您希望在请求之后(或者更确切地说,在收到响应之后)关闭连接,可以在请求中添加
连接:close
头。(见附件)。这将导致服务器关闭连接(如果它至少是一个性能良好的服务器。我认为对于httplib2,这也将导致连接关闭(由客户端关闭),以防服务器不按预期运行。我不知道其他LIB的情况),因为还没有提到它:很好(尽管它的一个优点是重用持久(保持活动)连接,而不是关闭它们)
至于关闭连接:你到底想要实现什么
如果您希望在请求之后(或者更确切地说,在收到响应之后)关闭连接,可以在请求中添加
连接:close
头。(请参阅)。这将导致服务器关闭连接(如果它至少是性能良好的服务器。我认为对于httplib2,这也将导致连接关闭(由客户端)以防服务器不按预期运行。我不知道其他LIB的情况)要关闭连接,可以使用with语句。这样可以确保正确关闭连接,即使在出现异常的情况下也可以关闭。有关更好的解释,请参阅。要关闭连接,可以使用with语句。这样可以确保正确关闭连接,即使在出现异常的情况下也可以关闭。S请参阅以获得更好的解释定义“更好”和“稳健”。与“更好”相关:您打算如何处理API定义“更好”和“稳健”。与“更好”相关:您打算如何处理API