gpt4 book ai didi

python - 如何从从 Google 阅读器导出的 OPML 文件中提取提要网址?

转载 作者:太空狗 更新时间:2023-10-29 22:27:49 45 4
gpt4 key购买 nike

我有一个名为 Rss-Aware 的软件我正在尝试使用。它基本上是桌面 feed-checker,检查 RSS feed 是否更新并通过 Ubuntu 的 Notify-OSD 系统发出通知。

但是,要知道要检查哪些提要,您必须在 ~/.rss-aware/rssfeeds.txt 中的文本文件中逐个列出提要 url,并在每个提要 url 之间使用换行符。像这样的东西:

http://example.com/feed.xml
http://othersite.org/feed.xml
http://othergreatsite.net/rss.xml

...看起来很简单吧?好吧,我想使用的提要列表是作为 OPML 文件(它是一种 XML)从 Google 阅读器导出的,我不知道如何解析它以仅输出提要 url。看起来应该很简单,但我很困惑。

如果有人可以用 Python 或 Ruby 或我可以根据提示快速完成的实现,我会很高兴。一个 bash 脚本会很棒。

非常感谢您的帮助,我是一个非常弱的程序员,很想学习如何进行这种基本的解析。

编辑:另外,here is the OPML file我正在尝试从中提取提要网址。

最佳答案

我为此目的编写了一个订阅列表解析器。它叫做listparser ,它是用 Python 编写的。我刚刚测试了您的 OPML 文件,它似乎可以完美地解析文件。它还将使您的提要标签可用。

如果您曾经使用过 feedparser,那么界面应该很熟悉:

>>> import listparser as lp
>>> d = lp.parse('https://dl.dropbox.com/u/670189/google-reader-subscriptions.xml')
>>> len(d.feeds)
112
>>> d.feeds[100].url
u'http://longreads.com/rss'
>>> d.feeds[100].tags
[u'reading']

可以使用类似于以下的脚本创建包含提要 URL 的文件:

import listparser as lp
d = lp.parse('https://dl.dropbox.com/u/670189/google-reader-subscriptions.xml')
f = open('/home/USERNAME/.rss-aware/rssfeeds.txt', 'w')
for i in d.feeds:
f.write(i.url + '\n')
f.close()

只需将 USERNAME 替换为您的实际用户名。完成!

关于python - 如何从从 Google 阅读器导出的 OPML 文件中提取提要网址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5761771/

45 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com