我想从博客pinchy&friends下载所有mp3。我试过了剧本
for mp3 in "http://www.pinchyandfriends.com/dl.php?mp3=*.mp3"; do
wget "http://www.pinchyandfriends.com/dl.php?mp3=${mp3}.mp3"
sleep 5
done
但所有结果都是尝试下载文字http://www.pinchyandfriends.com/dl.php?mp3=*.mp3
。我是否误解了我写的脚本和/或是否有更好的方法来做我正在尝试的事情?提前谢谢。
答案 0 :(得分:3)
你不能这样做,你实际上是$ mp3变量:“http://www.pinchyandfriends.com/dl.php?mp3= *。mp3”
你必须这样解决:
for mp3 in "title1" "title2" "title3"; do
wget "http://www.pinchyandfriends.com/dl.php?mp3=$mp3.mp3"
sleep 5
done
您应该先考虑如何获取mp3名称。
编辑: 这是你的解决方案。
for album in $(wget -q -O- http://www.pinchyandfriends.com/ | egrep -o "/[0-9]+/[^/]+/"); do
echo $album
dl_uri=$(wget -q -O- "http://www.pinchyandfriends.com$album" | egrep -o '/dl.php[^"]+')
wget "http://www.pinchyandfriends.com$dl_uri"
done
此脚本从主页面获取相册列表,然后转到相册页面以获取下载uri,然后使用wget实际获取mp3