我希望得到一个文件下载我的Linux系统,它的网址是
http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jre-7u51-linux-i586.tar.gz
而我发出以下命令:
wget -U 'Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:16.0) Gecko/20100101 Firefox/16.0' http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jre-7u51-linux-i586.tar.gz
而用户代理被传递到-U我从我的浏览器的用户代理复制。 但下载文件只是大小5.3KB,而整个文件是46.09MB和下载的文件已损坏。
我怎样才能解决这个问题?
纵观输出,你会发现,甲骨文拒绝了这一要求,包含以下信息:
为了下载产品从Oracle技术网,你必须同意OTN许可条款。
可以肯定的是...
- 您的浏览器有“cookies”和启用JavaScript。
- 你点击了“接受许可”您要下载的产品。
- 您尝试接受许可证后30分钟内下载。
最可能的是你要发送一些GET或POST值和/或保持会话数据。
该文件是不是“腐败”准确; 如果你去到那个URL在新的浏览器会话,你会看到一个错误页面,指出“为了下载从Oracle技术网络产品,你必须同意OTN许可条款。”。 这是你下载的页面-文件大小重定向到的页面是5307个字节。
之前,你可以将文件从下载页面 ,你必须接受使用单选按钮的许可协议。 否则,在浏览器中创建一个cookie,当你得到实际的文件cookie被选中。 wget
不具有该cookie可用。
您需要直接从网站下载,或安排wget
发送假的cookie,它可能是不一般的支持。 曾经有一些下载wget
附加脚本,不知道这人做; 它看起来并不像它从下载页面上有什么。