Python流http客户端与keep-alive

时间:2010-03-03 11:20:16

标签: python http streaming client keep-alive

我需要一个python http客户端,它可以重用连接并支持在流入时使用流。它将用于解析xml流,sax风格。

我提出了一个解决方案,但我不确定它是最好的解决方案(在python中有很多方法可以编写http客户端)

class Downloader():

    def __init__(self, host):
            self.conn = httplib.HTTPConnection(host)

    def get(self, url):
            self.conn.request("GET", url)
            resp = self.conn.getresponse()
            while True:
                    data = resp.read(10)
                    if not data:
                            break
                    yield data

谢谢大家!

2 个答案:

答案 0 :(得分:1)

urlgrabber支持keepalive并且可以返回类似文件的对象。

答案 1 :(得分:1)

还有pycurl。默认情况下,keepalive处于打开状态,您可以写入文件进行输出。

按照示例,他们非常有帮助