基于Shell的图片抓取器

最近,在学习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的方式来获得图片,用这种方式并不适用于较复杂的环境,充其量说这个只是一个初级版的图片爬取器了,有时间自己再写一个实用性更好地图片爬取器吧,好了,本篇博文到此结束。

如果需要,请注明转载,多谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值