Python pycurl仅获取响应的一部分

Python pycurl仅获取响应的一部分,python,json,pycurl,Python,Json,Pycurl,我使用pycurl在python中请求一个URL,该URL返回一个相当大的json格式响应。当我在浏览器中转到URL时,我会看到整个内容,但是如果我使用pycurl并打印接收到的数据,我只会看到我在浏览URL时看到的内容的一半,并且我会在使用json库解析数据时出错,说明: ValueError:从第1行第16078列(字符16078)开始的未终止字符串 pycurl请求如下所示: conn = pycurl.Curl() conn.setopt(pycurl.URL, myUrl) conn.

我使用pycurl在python中请求一个URL,该URL返回一个相当大的json格式响应。当我在浏览器中转到URL时,我会看到整个内容,但是如果我使用pycurl并打印接收到的数据,我只会看到我在浏览URL时看到的内容的一半,并且我会在使用json库解析数据时出错,说明:

ValueError:从第1行第16078列(字符16078)开始的未终止字符串

pycurl请求如下所示:

conn = pycurl.Curl()
conn.setopt(pycurl.URL, myUrl)
conn.setopt(pycurl.WRITEFUNCTION, on_receive)
conn.setopt(pycurl.CONNECTTIMEOUT, 30)
conn.setopt(pycurl.TIMEOUT, 30)
conn.setopt(pycurl.NOSIGNAL, 10)
conn.perform()
使用on_receive功能,当前仅打印数据


有人知道为什么我只得到部分回应吗?我使用了大量超时只是为了解决这个问题,我最初没有指定任何超时,但仍然会出现这个错误。

在pycurl中,您可以设置它

import pycurl
pycurl.CONTENT_LENGTH_DOWNLOAD 
试用

import Curl, pycurl
con = Curl()
con.set_option(pycurl.CONTENT_LENGTH_DOWNLOAD, 9999999999)
con.get('url' ....
还可以尝试以下操作,直到它起作用:

pycurl.SIZE_DOWNLOAD
pycurl.REQUEST_SIZE 

您可以尝试使用curl工具访问这些json数据。
当您能够获取数据时,只需将curl选项转换为pycurl选项

curl --help | less