欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

一个下载网页图片的shell脚本

程序员文章站 2023-01-08 17:07:15
记得去年找工作面试时,听到一位同学说自己非常喜欢linux,我相信他说的是真的,我觉得喜欢linux的人很大的快乐来自shell脚本,因为它能够整合linux上的各种资源干...

记得去年找工作面试时,听到一位同学说自己非常喜欢linux,我相信他说的是真的,我觉得喜欢linux的人很大的快乐来自shell脚本,因为它能够整合linux上的各种资源干大事。下面和大家分享下一个shell脚本写的图片抓取器。
使用方法:
复制以下代码,命名为img_downloader.sh。使用时在shell下输入 ./img_downloader.sh www.baidu.com -d images,该shell脚本就会把百度首页上的图片下下来了。

复制代码 代码如下:
#!/bin/bash
if [ $# -ne 3 ];
then
 echo "usage: $0 url -d directory"
 exit -1
fi

for i in {1..4}
do
 case $1 in
 -d) shift; directory=$1; shift;;
    *) url=${url:-$1};shift;
esac
done

mkdir -p $directory
baseurl=$(echo $url | egrep -o "https?://[a-z.]+")

echo "$baseurl"

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
 curl -s -o "$filename" --silent
done < /tmp/$$.list