收到以下错误...
curl: (56) GnuTLS recv error (-54): Error in the pull function.
...使用以下命令卷曲json文件
curl -L -o commerce.json http://www.commerce.gov/data.json
有什么建议吗?我不熟悉卷曲。也许这是一个超时错误。反正我可以阻止吗?我真的需要这个文件,我无法从浏览器下载它(假设文件太大)。
我在Ubuntu上从命令行工作。喜欢,或者是卷曲,蟒蛇解决方案。
答案 0 :(得分:2)
the error code 56 means the following, as described here https://curl.haxx.se/docs/manpage.html
56 Failure in receiving network data.
you should use a -v to see what's happen.
I don't thnik that another tool fix the network error.
Never the less there is a example in plain python.
答案 1 :(得分:1)
在bash中你可以使用:
wget -O commerce.json http://www.commerce.gov/data.json
否则,Python的解决方案是:
首先,您需要安装Python wget
库,然后才能使用代码:
import wget
url = 'http://www.commerce.gov/data.json'
commercejson = wget.download(url)
这会将data.json
文件下载到本地Python项目目录。
data.json
文件目前为198MB,因此curl可能无法很好地处理它。
更新:压缩JSON下载:
要启用gzip压缩,您可以使用以下内容下载gzip压缩版本,最终只需19MB,这样下载会更友好。
wget -S --header="accept-encoding: gzip" -O commerce.json.gz http://www.commerce.gov/data.json
然后,一旦下载了gzip压缩的json文件,运行以下命令将其解压缩:
gzip -d commerce.json.gz