我想获取包含以下内容的 URL 列表vimeo.com
通过命令递归地获取包含网站的 URL 列表,以便我可以将其通过管道传输到vimeo_downloader.sh。
我更喜欢使用wget
,但我也对其他选项感到满意。
例子
index.html
<a href="01.html">01</a>
<a href="02.html">02</a>
<a href="03.html">03</a>
<a href="04.html">04</a>
<a href="05.html">05</a>
<a href="06.html">06</a>
01.html
...
... src="//player.vimeo.com/video/xxxxxxxxxx?api=1" ...
...
同样02.html
有06.html
一个 vimeo 的 URL。如何获取所有 vimeo URL 01~06.html
?
答案1
您需要获取 URL 列表,然后解析出要提供下载的链接。由于您使用外部程序进行下载,而不是wget
真正需要wget
递归下载选项。
假设 GNUgrep
允许您仅打印匹配的文本,您可以使用以下命令获取 vimeo url:
wget -q -O - -i urllist.txt | grep -oi "http://vimeo.com/[0-9]\+"
然后将其输入下载器
urls=$(wget -q -O - -i urllist.txt | grep -oi "http://vimeo.com/[0-9]\+")
for url in $urls; do
echo "Downloading [$url]"
vimeo_downloader.sh "$url"
done