最近,在学习Linux Shell方面的东西,早在大学时期就接触个这方面的东西,只是工作的时候很少涉及到shell方面的,于是就荒废了,最近在服务器方面遇到了一些问题,当时写测试程序时,需要使用shell,于是重新拾取这部分内容,好了,说了这么多,参照《攻略》里的案例,自己调试了下这个图片抓取器,代码如下:
#!/bin/bash if [ $# -ne 3 ]; then echo "Usage:$0 URL -d DIRC" exit -1 fi for i in {1..4} do case $i in -d) shift;directory = $1;shift;; *) url=${url:-$1};shift; esac done mkdir -p $directory; baseurl= $(echo $url | egrep -o "http?://[a-zA-Z.]+") echo Downloading $url curl -s $url | egrep -o "<img src=[^>]*>" | sed ‘s/<img src=\"\([^"]*\).*/\1/g‘ > /tmp/$$.list sed -i "s|^/|$baseurl/|" tmp/$$.list cd $directory; while read filename; do echo Downloading $filename curl -s "$filename" done < /tmp/$$.list
总结
这篇博文主要是实现了一个简单的图片爬取器,所涉及到的思想很简单,就是首先通过curl来抓取html网页,然后再通过提取图片的url的方式来获得图片,用这种方式并不适用于较复杂的环境,充其量说这个只是一个初级版的图片爬取器了,有时间自己再写一个实用性更好地图片爬取器吧,好了,本篇博文到此结束。
如果需要,请注明转载,多谢
原文:http://blog.csdn.net/zmyer/article/details/19972691