修改:已翻译
我有一个我要解析的RSS-feed。这是一个播客,我只想用MP3-urls下载wget。
这是播客:http://feeds.feedburner.com/Film-UndKino-trailerVideopodcast
标题应包含(de)
以获得德国剧集。
发布日期应该是今天。
如果有人可以帮助我会很棒 - 我走到这一步:
wget -q -O- view-source:http://feeds.feedburner.com/Film-UndKino-trailerVideopodcast?format=xml| awk 'BEGIN{RS=""} /(date +'%d %M %Y')/{ gsub(/.*|.*/,"") print }
但它不起作用。
提前致谢, arneb3rt
答案 0 :(得分:2)
您需要从wget命令中删除“view-source:”并在awk命令之外执行date命令(使用%b打印缩写的月份而不是%M)。以下bash脚本使用grep而不是awk来生成wget可以获取播客的URL。
请注意,可能由于假期,自2011年12月24日以来没有播客,因此我对最后一个播客的日期进行了硬编码测试:
url='http://feeds.feedburner.com/Film-UndKino-trailerVideopodcast?format=xml'
d=$(date +'%d %b %Y')
d="24 Dec 2011"
echo "Checking podcasts for date: ${d}"
wget -q -O- ${url} |\
grep -A6 "(de)" |\
grep -A1 "${d}" |\
egrep -o 'http[^ ]*de.mp4' |\
sort | uniq
上述bash脚本的输出列出了两个URL(一个feedburner和另一个iTunes):
Checking podcasts for date: 24 Dec 2011
http://feedproxy.google.com/~r/Film-UndKino-trailerVideopodcast/~5/pzeSvkVK-3A/trailer01_de.mp4
http://www.moviemaze-trailer.de/ipod/6841/trailer01_de.mp4
因此,您可以从以上任一网址获取2011年12月24日的播客。