使用wget整站下载时--content-on-error参数失效问题求助
问题原因
Ubuntu Server 20.04.6 LTS默认预装的wget版本为1.20.3,而--content-on-error参数是wget 1.21版本才新增的功能,因此你的命令里该参数会被直接忽略,导致wget仍因404状态码拒绝下载页面内容。
解决方案
方法1:升级wget至支持参数的版本
Ubuntu 20.04可通过snap安装新版wget:
sudo snap install wget
之后用snap run wget替代原生wget执行你的命令:
snap run wget \ --recursive \ --page-requisites \ --html-extension \ --convert-links \ --content-on-error \ --restrict-file-names=windows \ --domains rainers-modellbau.at \ --no-parent \ www.rainers-modellbau.at
方法2:不升级wget,用兼容参数组合
如果不想升级wget,可通过以下参数组合强制下载404页面的内容:
wget \ --recursive \ --page-requisites \ --html-extension \ --convert-links \ --restrict-file-names=windows \ --domains rainers-modellbau.at \ --no-parent \ --ignore-length \ --server-response \ www.rainers-modellbau.at
--ignore-length:忽略服务器返回的Content-Length头,避免因头信息异常终止下载--server-response:强制读取完整的服务器响应内容,确保wget获取页面返回的资源
内容的提问来源于stack exchange,提问作者Philipp
相关产品推荐
相关产品推荐

