13

我想在我的 ReadyNas 上解析 rss 提要并下载播客,无论如何它都在 24/7 运行。

所以我正在考虑让一个 shell 脚本定期检查提要并生成 wget 来下载文件。

进行解析的最佳方法是什么?

谢谢!

4

5 回答 5

23

有时,一个带有 shell 标准命令的简单单行就足够了:

 wget -q -O- "http://www.rss-specifications.com/rss-podcast.xml" | grep -o '<enclosure url="[^"]*' | grep -o '[^"]*$' | xargs wget -c

当然,这并不适用于所有情况,但通常已经足够好了。

于 2009-01-15T10:06:12.123 回答
2

你可以访问awk吗?也许你可以使用XMLGawk

于 2009-01-14T18:01:24.973 回答
1

我在这里那里读到了关于XMLStartlet

但是有可用的 ReadyNas NV+ 端口吗?

于 2009-01-14T17:49:56.960 回答
1

我编写了以下用于从 Amazon S3 下载 XML 的简单脚本,因此它可用于解析不同类型的 XML 文件:

#!/bin/bash
#
# Download all files from the Amazon feed
#
# Usage:
#  ./dl_amazon_feed_files.sh http://example.s3.amazonaws.com/
# Note: Don't forget about slash at the end
#

wget -qO- "$1" | grep -o '<Key>[^<]*' | grep -o "[^>]*$" | xargs -I% -L1 wget -c "$1%"

这与@leo answer类似。

于 2013-02-14T13:38:13.577 回答
0

您可以使用libxml2中的 xsltproc并编写一个简单的 xsl 样式表来解析 rss 并输出链接列表。

于 2009-01-14T18:15:29.373 回答