巧用linux命令做图片下载器

在平时上网的时候,发现有些图片不错,想保存到本地,一个一个的保存确实够费劲的,如果把整个网页都保存了,有些又是自己不需要的,就算下载下来了,还得从上百个网页元素中去筛选,哪些是css文件,哪些是js文件。如果能够使用命令来作为图片下载器就好了,至少不用那么费神的去干很多重复的工作。
我们可以使用curl这个强大的工具来完成这个看似很艰难的任务。
首先的难点就是从网页中抓取图片的url,一般网页中都会是以的形式出现的。我们可以使用下面的形式来抽取图片的url
curl -s "$1" |egrep -o  "]*>"|sed 's/
这样就会把网页中的Img标签的内容给抽取出来。
接着我们继续使用curl来根据得到的url来下载图片。
我们可以把命令整合起来,完整的脚本就类似下面的形式
curl -s $1 |egrep -o  "]*>"|sed 's/tmp_getpic.sh
ksh tmp_getpic.sh

简单举个例子。
我们从下面的网站中下载图片
http://image.baidu.com/
直接运行 ksh getpic.sh "http://image.baidu.com/"
查看tmp_getpic.sh的内容如下:
curl -s -O http://img1.bdstatic.com/static/common/widget/search_box_home/logo/home_white_logo_0ddf152.png
curl -s -O http://img1.bdstatic.com/img/image/shitu/feimg/uploading.gif
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/chongwu15.jpg
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/sheying15.jpg
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/mingxing15.jpg
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/bizhi15.jpg
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/sheji15.jpg
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/shishang15.jpg
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/meishi15a.jpg
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/lvyou15.jpg
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/hunjia15.jpg
curl -s -O http://img0.bdstatic.com/img/image/shouye/xinshouye/qiche15.jpg
[ora11g@rac1 ~]$ 
可见已经解析出了很多的图片了。直接通过curl下载就可以了。如果网站的链接再复杂一些也没有关系,基本都能解析出来。

时间: 2024-09-25 03:32:03

巧用linux命令做图片下载器的相关文章

php实现的css文件背景图片下载器代码_php技巧

本文实例讲述了php实现的css文件背景图片下载器代码.分享给大家供大家参考.具体实现方法如下: 下载css文件里面的背景图片是我们这些盗版份子长期搞的事情,下载个css图片下载器常出现各种广告弹窗,实在扛不住.这里就提供了一个php版的css文件背景图片下载器给大家. 把文件放到php程序目录 dos下面 php.exe cssImages.php 0 http://www.xxxx.com/css/style.css \images\ 先在php程序目录建个images文件夹,呵呵,贴代码:

.NET破解之图片下载器

自去年五月加入吾爱后,学习了三个月,对逆向破解产生了深厚的兴趣,尤其是对.NET方面的分析:但由于这一年,项目比较忙,事情比较多,破解这方面又停滞了许久,不知道还要好久. 前些天,帮忙批量下载QQ相册的照片,搜索了好几个都不好用: 最 后搜索到这个Z木鸟图片下载器,基本能达到目的,但试用版有下载数量限制. 于是,一时来兴,又简单地分析了一下(由于时间关系,就不描述过程了),去掉了登陆和试用版本限制.大家可以去练一下手. 链接:https://yunpan.cn/c6ZSpAyk4Xdqj (提取

视频下载器用java怎么做

问题描述 视频下载器用java怎么做 视频下载器用java怎么做,就是直接把视频地址放上去就下载,请问怎么做 解决方案 网页吗?还是?没明白你的意思

新浪Flash下载器 [HttpWebRequest | 新浪视频]

前言      哈哈,好久不写小工具了,去年写的笨笨图片批量下载器 V0.3 beta平时还是帮了一些忙的,今天的小工具是 新浪Flash下载器 .可以直接下载swf结尾的文件,如果下载新浪视频文件,你需要右键源代码找到这个flash的伪链接,如http://music.sina.com.cn/yueku/flashPlayer.swf?vid=6851105,然后把这里连接复制到软件输入框点下载就可以了.   运行环境      1.     Microsoft .NET Framework

笨笨图片批量下载器 V0.3 beta[C# | WinForm | 正则表达式 | HttpWebRequest | Async异步编程] new

前言      从[笨笨图片批量抓取下载 V0.2 beta]到[笨笨图片批量下载器 V0.3 beta]时间将近2个月,不是说这个升级版本开发了这么久,实在是懒,呵呵: )再加有时候工作忙.学习,多的时间就不愿意动了,现在都感觉辜负了上一版N多朋友的支持了,不过这将近一个星期时间我按计划完成了这个小软件版的升级开发,并且依然和上两个版本一样保持源代码开源,文章最后有下载地址,以下是这个版本相比上个版本的特点:      1.     加入图片是否重命名.      2.     加入异步线程池

Win7系统中巧用命令快速打开事件查看器的方法

  事件查看器是Microsoft Windows操作系统工具.通过事件查看器我们不仅可以查看硬件.系统组件的信息,还可以诊断当前系统问题的根源,预测潜在的系统问题,是排除win7系统问题的好帮手.今天小编就教大家在win7系统中利用命令快速打开事件查看器的具体操作步骤如下. 1.按下组合键"win+r"打开运行窗口,接着在运行对话框中输入"eventvwr.msc"; 2.按回车键,即可打开事件查看器. 上述就是Win7系统中巧用命令快速打开事件查看器的方法,是不

link环境下使用codefirst技术制作的《网盘软件》,下载器下载的同时上传怎么做?

问题描述 link环境下使用codefirst技术制作的<网盘软件>,下载器下载的同时上传怎么做? link环境下使用codefirst技术制作的<网盘软件>,下载器下载的同时上传怎么做? 解决方案 开两个线程,一个上传一个下载就是了,你的问题是什么

jsp 网站开发-想要做一个网站上的图片下载的链接,有一行代码看不懂,求指导

问题描述 想要做一个网站上的图片下载的链接,有一行代码看不懂,求指导 d3.select(this).attr("href", "data:image/svg+xml;charset=utf-8;base64," + btoa(unescape(encodeURIComponent( svg.attr("version", "1.1") .attr("xmlns", "http://www.w3.

link环境下使用codefirst技术制作《网盘软件》下载器,请问如何做密码保护?

问题描述 link环境下使用codefirst技术制作<网盘软件>下载器,请问如何做密码保护? link环境下使用codefirst技术制作<网盘软件>下载器,请问如何做密码保护? 解决方案 一般是通过手机或者邮箱实现找回密码,绑定手机发短信