Udacity Downloader in Bash
ဘာရယ်တော့မဟုတ်ပါဘူး Udacity က Course တချို့ကို လေ့လာရင်း စိတ်ကူးပေါက်လို့ရေးထားတာပါ။ အမှန်တော့ Python နဲ့ရေးထားတဲ့ udacity-dl ရှိပြီးသားပါ။ သို့ပေမယ့် သုံးနေတဲ့စက်မှာ အဆင်မပြေဖြစ်နေတာနဲ့ Bash နဲ့ ပြန်ရေးကြည့်ဖြစ်သွားတာပါ။ အပြည့်အဝအသုံးချနိုင်တယ်ရယ်တော့မဟုတ်ပါဘူး။ Bash Scripting ကို စိတ်ဝင်စားသူတွေ၊ လေ့လာနေသူတွေအတွက် အထောက်အကူပြုလိုပြုငြား မျှဝေခြင်းသက်သက်သာဖြစ်ပါတယ်။
Download ရယူနိုင်တဲ့ Course တွေကိုတော့ https://www.udacity.com/wiki/downloads မှာကြည့်နိုင်ပါတယ်။ Course တိုင်းတော့ မဟုတ်ပါဘူး။ Course Material တွေကို zip ဖိုင်အနေနဲ့ ပြုလုပ်ပြီး တင်ပေးထားတဲ့ Course တွေအတွက်ပဲသုံးနိုင်တာပါ။ အသုံးများတဲ့အတွက် Server က Bot လို့သတ်မှတ်ပြီး Download ပိတ်ထားတာမျိုးလည်းကြုံနိုင်ပါတယ်။
Installer package အနေနဲ့ Github မှာ တင်ပေးထားပြီး အသုံးပြုပုံကိုတော့ README မှာရေးပေးထားပါတယ်။
#!/bin/bash
dlist=(`curl -s -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:40.0) Gecko/20100101 Firefox/40.0' "https://www.udacity.com/wiki/$1/downloads" | sed -n 's/.*href="\([^"]*\).*/\1/p' | grep zip`)
for i in ${dlist[@]};
do
if [ -f "${i##*$1/}" ]; then
echo "${i##*$1/} : Resuming Download..."
curl -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:40.0) Gecko/20100101 Firefox/40.0' -L -o "${i##*$1/}" -C - "$i"
else
echo "Downloading ${i##*$1/}"
curl -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:40.0) Gecko/20100101 Firefox/40.0' -o "${i##*$1/}" "$i"
fi
done