您好,登錄后才能下訂單哦!
這篇文章主要介紹了shell腳本如何實現獲取圖片,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
shell腳本實現獲取圖片。
#!/usr/bin/bash
. /etc/init.d/functions
function check(){
time=`date "+%F %X"`
echo "當前時間:$time"
ip=$(ip a |grep inet |grep "scope global dynamic"|awk -F"/" '{print $1}' |awk '{print $2}')
ping -w1 -c1 www.baidu.com &>/dev/null
if [[ $? -ne 0 ]];then
echo_failure || echo "網絡異常,請檢查"
else
echo_success && echo "網絡正常 當前IP:$ip"
fi
yum repolist &>/dev/null
if [[ $? -ne 0 ]];then
echo_failure || echo "yum異常,請檢查"
fi
}
function down(){
yum install -y wget &>/dev/null
w=`echo "$1" |tr -d '\n' |od -An -tx1|tr ' ' %`
data=$(curl -s "https://image.baidu.com/search/index?tn=baiduimage&word=$w")
echo $data | grep -P -o "https://ss.*?.jpg" | sort -n -r |uniq >> $2/url2.txt
a=0
while read line
do
sleep 1
code=$(curl -I "$line" 2>/dev/null)
if [ ${code:9:3} -eq 200 ];then
wget -O $2/$1${a}.jpg $line &>/dev/null
echo "下載完成 $line"
else
echo "無效資源 $line"
fi
let a++
done <$2/url2.txt
echo "全部下載完成,下載資源$a個"
return 200
}
function clea(){
echo "正在打包,請稍后"
sleep 2
tar cvzf image.tar.gz $1
rm -rf $1/url2.txt
}
function main(){
check
down $1 $2
if [[ $? -eq 200 ]];then
clea $2
return 100
else
echo "下載異常,正在清理環境"
rm -rf $2
return 101
fi
}
clear
echo -e "本程序功能為獲取圖片: 圖片\n禮貌爬取,快樂你我他\n程序設計目的:shel腳本#!/usr/bin/bash
. /etc/init.d/functions
function check(){
time=`date "+%F %X"`
echo "當前時間:$time"
ip=$(ip a |grep inet |grep "scope global dynamic"|awk -F"/" '{print $1}' |awk '{print $2}')
ping -w1 -c1 www.baidu.com &>/dev/null
if [[ $? -ne 0 ]];then
echo_failure || echo "網絡異常,請檢查"
else
echo_success && echo "網絡正常 當前IP:$ip"
fi
yum repolist &>/dev/null
if [[ $? -ne 0 ]];then
echo_failure || echo "yum異常,請檢查"
fi
}
function down(){
yum install -y wget &>/dev/null
w=`echo "$1" |tr -d '\n' |od -An -tx1|tr ' ' %`
data=$(curl -s "https://image.baidu.com/search/index?tn=baiduimage&word=$w")
echo $data | grep -P -o "https://ss.*?.jpg" | sort -n -r |uniq >> $2/url2.txt
a=0
while read line
do
sleep 1
code=$(curl -I "$line" 2>/dev/null)
if [ ${code:9:3} -eq 200 ];then
wget -O $2/$1${a}.jpg $line &>/dev/null
echo "下載完成 $line"
else
echo "無效資源 $line"
fi
let a++
done <$2/url2.txt
echo "全部下載完成,下載資源$a個"
return 200
}
function clea(){
echo "正在打包,請稍后"
sleep 2
tar cvzf image.tar.gz $1
rm -rf $1/url2.txt
}
function main(){
check
down $1 $2
if [[ $? -eq 200 ]];then
clea $2
return 100
else
echo "下載異常,正在清理環境"
rm -rf $2
return 101
fi
}
clear
echo -e "本程序功能為獲取圖片: 快樂你我他\n程序設計腳本測
sleep 1
read -p "請輸入要爬取的圖片關鍵字,默認為中國): " words
read -p "請輸入資源存放路徑,默認為 /tmp/image : " path
if [ -z $words ];then
words="中國"
fi
if [ -z $path ];then
path='/tmp/image'
mkdir /tmp/image
fi
main $words $path
if [ $? -eq 100 ];then
echo "程序退出"
else
echo "程序異常退出"
fi
感謝你能夠認真閱讀完這篇文章,希望小編分享的“shell腳本如何實現獲取圖片”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。