【发布时间】:2014-05-10 20:54:25
【问题描述】:
给定一个在线文件,我可以通过我的网络浏览器下载它。
我在上面运行了curl,带有
mkdir -p ./data
curl -L -C - 'http://www.ngdc.noaa.gov/mgg/global/relief/ETOPO1/data/ice_surface/grid_registered/netcdf/readme_etopo1_netcdf.txt' -o ./data/countries.zip
我选择以下错误消息:
curl: (33) HTTP 服务器似乎不支持字节范围。不能 继续。
如何解决?欢迎使用其他下载工具。
注意:
-
-L: 跟随重定向 -
-C -:继续之前未完成的下载
编辑:当要下载的文件已经存在并且已经完成时会出现此错误消息。它还会停止正在进行的脚本。我的要求是:
- 如果文件不存在,则下载。
- 如果文件确实存在但不完整,请从停止的地方继续下载。
- 如果文件确实存在并且完整,静默传递到下一个命令。 (没有失败)
我该怎么做?
【问题讨论】:
-
服务器是否支持继续不完整的下载? IE。如果你下载一个文件并在中途按Ctrl+C,你能继续吗?如果是这样,那么您现在看到的肯定是一个 cURL 错误。
-
是的,服务器明确接受恢复未完成的下载。但是,当下载完成并再次发送 curl 请求时,curl 会回退这个精确的错误 33。它应该注意完整性并发送成功消息。
-
我跑了两次
curl -L -C - 'http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_sovereignty.zip' -o countries.zip。第二次,cURL 只是给** Resuming transfer from byte position 5351381并成功退出,没有下载任何东西。您的 cURL 是否可能已过时?我正在运行curl 7.37.0。 -
@nneonneo: 你能用这个ngdc.noaa.gov/mgg/global/relief/ETOPO1/data/ice_surface/… 再次尝试相同的命令(下载、停止、恢复、完成、重新下载)吗(错误又回来了?)
-
该错误出现在我的带有该 URL 的版本上。所以,我更新了我的答案并向 curl 报告了一个错误。
标签: curl gis wget web-crawler