如何使用wget
从以下网页下载并保存特定图像。
http://www-nass.nhtsa.dot.gov/nass/cds/GetBinary.aspx?SceneView&ImageID=509617654
我尝试了this
"C:\Program Files (x86)\GnuWin32\bin\wget" -r -P "C:\temp\" -A jpeg,jpg,bmp,gif,png "http://www-nass.nhtsa.dot.gov/nass/cds/GetBinary.aspx?SceneView&ImageID=509617654"
但图片没有下载和保存。我正在使用Windows 7.我想我没有得到图像,因为网页不是一个合适的html页面(没有html或asp等扩展名)。我对么?
答案 0 :(得分:0)
不完全是。包含HTML的网址(例如http://google.com/)不需要文件扩展名。
通过检查HTML源代码(忽略该页面包含无效的HTML(<script>
和<head>
之间的<body>
标记)),我们可以看到它使用JavaScript来将图片的页面加载src
属性(为什么,谁知道......)更改为/GetBinary.aspx?Scene&ImageID=509617654&CaseID=&Version=
(相对于HTML页面)。
由于 wget
无法执行JS ,因此无法使用(如此)。
然而,actual image URL确实返回了JPEG图像,但您必须重命名它,因为Web服务器(IIS)配置错误,因为该URL返回标题:< / p>
Content-Type: E:\Sites\NASS\CDS\/img/jpg
无效,在大多数浏览器/客户端下载时会导致文件关联问题。
要证明它,您可以尝试使用wget
直接下载:
wget "http://www-nass.nhtsa.dot.gov/nass/cds/GetBinary.aspx/GetBinary.aspx?Scene&ImageID=509617654&CaseID=&Version=" -O image.jpg