在Python URLLIB2中读取大量内容长度时阻塞了套接字

时间:2014-06-05 20:38:22

标签: python urllib2 python-sockets

我正在使用Python来使用返回 JSON 响应的Web服务。当响应的内容长度不那么大时,一切都很顺利。当响应的内容长度非常大时,问题就出现了。

这是我的代码片段,非常简单:

response = urllib2.urlopen(request)
content = response.read()
response.close()

请求是正确形成的 urllib2.Request

如果我打印 response.info(),它会给我:

Content-Type: application/json 
Content-Length: 3244749 
Connection: close Date: Thu, 05 Jun 2014 20:24:23 
GMT Server: EESBServer

我的脚本永远停留在 response.read()中,就像套接字被阻止一样。

我一直在寻找解决方案,但尚未找到解决方案。

我真的很感激帮助。

2 个答案:

答案 0 :(得分:1)

以块的形式使用响应,例如:

response.read(1024)

答案 1 :(得分:0)

我解决了这个问题。它只是我不知道的服务器参数。上述参数限制了可通过连接读取的数据量。