我只是想下载这个,但它总是重定向到主页,最后只下载 index.html 文件,而不是我想下载的文件:
http://tweaking.com/files/setups/tweaking.com_windows_repair_aio.zip
你们知道如何正确下载吗?我使用了 --user-agent="firefox+linux, IE+windows, (任何你能想到的)",但是不起作用。
这是输出,与--user-agent
启用时相同:
jaheaga@jaheaga:~$ wget http://www.tweaking.com/files/setups /tweaking.com_windows_repair_aio.zip--2012-04-13 19:40:07-- http://www.tweaking.com/files/setups/tweaking.com_windows_repair_aio.zip
Resolviendo www.tweaking.com... 199.119.100.39
Conectando con www.tweaking.com[199.119.100.39]:80... conectado.
Petición HTTP enviada, esperando respuesta... 302 Found
Ubicación: http://tweaking.com [siguiente]
--2012-04-13 19:40:08-- http://tweaking.com/
Resolviendo tweaking.com... 199.119.100.39
Reutilizando la conexión con www.tweaking.com:80.
Petición HTTP enviada, esperando respuesta... 302 Moved Temporarily
Ubicación: http://www.tweaking.com [siguiente]
--2012-04-13 19:40:08-- http://www.tweaking.com/
Reutilizando la conexión con www.tweaking.com:80.
Petición HTTP enviada, esperando respuesta... 200 OK
Longitud: no especificado [text/html]
Grabando a: “tweaking.com_windows_repair_aio.zip.1”
[ <=> ] 46.913 234K/s en 0,2s
2012-04-13 19:40:09 (234 KB/s) - “tweaking.com_windows_repair_aio.zip.1” guardado [46913]
答案1
用户代理是一个好的开始,但在这种情况下还不够。另一个经常检查的 HTTP 标头值是“Referer”[原文如此!]。请参阅维基百科:HTTP Referer。
wget 有一个--referer=url
指定引用页面的选项。分析成功下载的流量显示Wireshark
它使用了来自我的测试系统的以下请求:
GET /files/setups/tweaking.com_windows_repair_aio.zip HTTP/1.1
Host: www.tweaking.com
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:11.0) Gecko/20100101 Firefox/11.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-gb,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://www.tweaking.com/content/page/windows_repair_all_in_one.html
对于这种情况,你甚至似乎不需要伪造User-Agent
。
wget --referer=http://www.tweaking.com/content/page/windows_repair_all_in_one.html http://www.tweaking.com/files/setups/tweaking.com_windows_repair_aio.zip
成功了。