雲端計算教程學習路線影片原始碼課件:shell指令碼實現獲取圖片
在雲端計算蓬勃發展的今天,與其在家閒著,不如立即開始學習,現在開始,千鋒HTML5、UI互動設計、PHP、Java+雲資料、大資料開發、VR/AR/Unity遊戲開發、Python人工智慧、Linux雲端計算、全棧軟體測試影片教程免費送!領取方式在下方留言即可,希望可以幫助你在“逆境”中成長,從容開啟新的一年。下面千鋒給大家講解一下: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 &>/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 "*?.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 &>/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 "*?.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
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69916964/viewspace-2679183/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 雲端計算培訓教程學習路線影片原始碼課件:Shell變數知識梳理原始碼變數
- 雲端計算教程學習路線影片原始碼課件:Linux效能監控工具-gtop原始碼Linux
- 雲端計算培訓教程學習路線影片原始碼課件:seafile私有網盤搭建原始碼
- 雲端計算教程學習路線影片原始碼課件:linux文字處理三劍客之AWK原始碼Linux
- 雲端計算教程學習入門影片原始碼課件:CURL命令使用指南原始碼
- 雲端計算影片教程:2020年雲端計算學習路線圖
- 雲端計算學習路線教程大綱課件:關於shell知識點
- 雲端計算學習路線教程程式碼筆記:Shell程式設計筆記程式設計
- 雲端計算學習路線教程大綱課件:LVM管理LVM
- 雲端計算學習路線教程大綱課件:FTP ServerFTPServer
- 雲端計算學習路線圖素材課件:雲端計算常用的開源工具開源工具
- 雲端計算學習路線教程大綱課件:使用自建源
- 雲端計算學習路線教程大綱課件:關於NFSNFS
- 雲端計算教程學習入門影片課件:雲端計算與人工智慧人工智慧
- 雲端計算學習路線圖課件:多雲的管理方法
- 雲端計算學習路線圖素材、課件,TIMESTAMPADD知識點
- 雲端計算學習路線教程大綱課件:Linux新手入門教程Linux
- 雲端計算學習路線教程大綱課件:客戶端查詢客戶端
- 雲端計算學習路線教程大綱課件:雲端計算開發程式設計條件結構程式設計
- 雲端計算學習路線教程大綱課件:網路管理基礎
- 雲端計算學習路線教程大綱課件:tar專案實戰案例
- 雲端計算教程學習原始碼影片課件:企業應該如何選擇正確的雲平臺原始碼
- 雲端計算教程學習入門影片課件:雲端計算終端技術講解
- 雲端計算教程學習入門影片課件:怎麼組建雲端計算中心?
- 雲端計算教程學習入門影片課件:雲端計算中心怎麼選址?
- 雲端計算教程學習入門影片課件:雲端計算中IDS是什麼?
- 雲端計算教程學習入門影片課件:雲端計算中SOA是什麼?
- 雲端計算教程學習入門影片課件:雲端計算安全性有哪些?
- 雲端計算教程學習入門影片課件:雲端計算架構參考模型架構模型
- 雲端計算學習路線教程大綱課件:磁碟陣列 RAID陣列AI
- 雲端計算學習路線教程大綱課件:檔案連結
- 雲端計算學習路線教程大綱課件:關於HTTP ServerHTTPServer
- 雲端計算教程學習入門影片課件:雲端計算園區雲是什麼?
- 雲端計算學習路線圖課件:雲端計算中的常見的雲配置錯誤
- 雲端計算學習路線圖素材課件:DevOps和雲端計算之間的關係dev
- 雲端計算學習路線圖課件:Kubernetes知識點詳解
- 雲端計算教程學習入門影片課件:雲應用是什麼?
- 雲端計算學習路線原始碼框架筆記:Mysql原始碼一原始碼框架筆記MySql