我正在尝试使用wget
它来自动下载壁纸。命令如下:
wget http://static.die.net/earth/mercator/1600.jpg
但是,如果我尝试打开生成的图片,它似乎会说它有一个错误的魔法数字。通过运行file 1600.jpg
,我得到了1600.jpg: GIF image data, version 89a, 1 x 1
。如果我将其作为 GIF 打开,它也不会起作用。它也只有 37 个字节。
如果我通过 Firefox 查看或下载它,它可以完美地运行。
有任何想法吗?
答案1
我认为这是某种针对直接下载的保护措施,没有什么问题wget
(服务器正在向您发送透明的 1x1 GIF 图像)。
您可以使用标志来解决这个问题wget
,-U
添加浏览器的用户代理字符串,例如:
wget -U "Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/534.17 (KHTML, like Gecko) Ubuntu/11.04 Chromium/11.0.654.0 Chrome/11.0.654.0 Safari/534.17" http://static.die.net/earth/mercator/1600.jpg
但:您应该先询问该网站的所有者是否可以通过这种方式下载内容。阻止这种常用方法肯定是有原因的wget
(可能是故意的,也可能只是配置错误)。