簡體   English   中英

如何在shell腳本中解析rss-feeds / xml

[英]How to parse rss-feeds / xml in a shell script

我想在我的ReadyNas上解析rss提要並下載播客 ,無論如何都是全天候運行。

所以我正在考慮讓shell腳本定期檢查feed並生成wget來下載文件。

解析的最佳方法是什么?

謝謝!

有時,帶有shell標准命令的簡單單行程序就足夠了:

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

當然這並不適用於所有情況,但它通常足夠好。

你有權訪問awk嗎? 也許你可以使用XMLGawk

我編寫了以下用於從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答案類似。

在這里那里讀到了關於XMLStartlet的內容

但ReadyNas NV +有可用的端口嗎?

您可以使用libxml2中的 xsltproc並編寫一個簡單的xsl樣式表來解析rs並輸出鏈接列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM