我尝试使用 wget 下载这个但是失败了。
https://code.ros.org/trac/wg-ros-pkg/raw-attachment/ticket/5069/rein_cmakelists2.patch
sam@sam:/media/Data/code/ros/recognition/rein$ wget https://code.ros.org/trac/wg-ros-pkg/raw-attachment/ticket/5069/rein_cmakelists2.patch
--2012-10-04 16:29:30-- https://code.ros.org/trac/wg-ros-pkg/raw-attachment/ticket/5069/rein_cmakelists2.patch
Resolving code.ros.org (code.ros.org)... 157.22.19.21
Connecting to code.ros.org (code.ros.org)|157.22.19.21|:443... connected.
HTTP request sent, awaiting response... Read error (Connection reset by peer) in headers.
Retrying.
--2012-10-04 16:29:32-- (try: 2) https://code.ros.org/trac/wg-ros-pkg/raw-attachment/ticket/5069/rein_cmakelists2.patch
sam@sam:/media/Data/code/ros/recognition/rein$
但我可以用firefox下载。
如何使用 wget 下载此类文件?
谢谢〜
答案1
有些网站或服务器会阻止wget
(以及类似的工具),以便只允许从浏览器下载。你可以欺骗网站,让它认为你是真正的浏览器。谷歌上有很多例子。这里有一个特别完整的例子,摘自阿萨卡帕切。要查找替代方案,只需谷歌一下wget pretend browser
。
wget
--referer="http://www.google.com"
--user-agent="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"
--header="Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"
--header="Accept-Language: en-us,en;q=0.5"
--header="Accept-Encoding: gzip,deflate"
--header="Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"
--header="Keep-Alive: 300"
-dnv [THE URL; in your case: https://code.ros.org/trac/wg-ros-pkg/raw-attachment]/ticket/5069/rein_cmakelists2.patch
这是一个命令,不过我把它分成几行以增加可读性。您可以将其设为别名以使其更易于使用。
答案2
这可能是因为网站使用票证和 Cookie 进行下载(其他一些方法也是如此)。因此在使用时,wget
需要加载 Cookie 文件以及其他选项(如用户代理等 )。
例如:
"wget" --trust-server-names -c -O jre-7u21-linux-x64.rpm --directory-prefix=/home/totti/Downloads --referer= http://java.com/en/download/linux_manual.jsp \?locale=en --load-cookies=/tmp/flashgot.7gavixy1.default/cookies --header=Cookie:s_vi=[CS]v1\|28BA8A90050109CA-6000011540153427[CE]\;\ --user-agent=Mozilla/5.0\ (X11\;\ Ubuntu\;\ Linux\ i686\;\ rv:16.0)\ Gecko/20100101\ Firefox/16.0 http://sdlc-esd.sun.com/ESD6/JSCDL/jdk/7u21-b11/jre-7u21-linux-x64.rpm \?AuthParam=1366627766_80a413ae29c4b4d2e12ac7e334d61847\&GroupName=JSC\&FilePath=/ESD6/JSCDL/jdk/7u21-b11/jre-7u21-linux-x64.rpm\&File=jre-7u21-linux-x64.rpm\&BHost=javadl.sun.com
使用 Firefox 扩展可以轻松完成此操作Flashgot
。(请有人添加链接)