ff下载图片实在是不行,而且一百多张图就呼呼喘了(cpu风扇),最不能忍受的是每张图都是一半的,于是还是自己动手。
先保存好网页,然后写一小段解析代码(请先安装hpricot):
ruby 代码
-
require
“rubygems”
-
require
“open-uri”
-
require
“hpricot”
-
DEFAULT_IMG_FILE=
File
.expand_path(
“img.html”
,
File
.dirname(__FILE__)) - local_file=DEFAULT_IMG_FILE
-
list_file=
File
.expand_path(
“img.list”
,
File
.dirname(__FILE__)) -
if
File
.readable? local_file - doc=Hpricot(open(local_file))
-
list=
File
.
new
(list_file,
“w+”
) -
(doc/
“img”
).
each
()
do
|img
| -
link=img.attributes[
“src”
] -
if
link=~ /^http:\/\// - list.puts link
-
end
-
end
- list.close
-
end
原来还准备多写些,后来一想算了,先这样凑和吧。生成了img.list文件后,直接交给wget就完事了。
ruby 代码
- wget -i img.list -P imgs
然后就等着吧,wget会重试几次的,而且是单线程下载,很安全。不过要应付多页面还是不行,其实wget本身就可以实现循环下载,网站镜像,不过没去研究罢了。
linux下的工具每一个都不可小视啊。