RSS 解析器使用 Bash 或 Python 与其他软件交互

RSS 解析器使用 Bash 或 Python 与其他软件交互

我正在尝试创建一个在 Linux 环境(最好是 Raspbian 或 Debian)中运行的程序或脚本(我们称之为Worker),它从 RSS 提要收集链接并将它们发送到另外 2 个程序进行处理。

以下是Worker应执行的具体步骤:

  1. 从文本文档中解析以换行符分隔的多个 RSS 源

    https://example.com/feed.xml?id1 nsfw
    https://example.com/feed.xml?id2
    https://example.com/feed.xml?id3
    [...]
    https://example.com/feed.xml?id9`
    
  2. 从每个 feed 中提取链接

  3. 删除<title>元素中带有特定关键字的链接。文本文档中为每个 feed 设置关键字,关键字与相应链接之间用空格隔开,如下所示:

    https://example.com/feed.xml?id1 nsfw
    

    如果未设置-则无需删除。

  4. 根据<published>元素按日期/时间对结果链接进行排序。例如:

    <published>2018-07-27T01:02:03+00:00</published>
    
  5. 将最新链接发送到某个handler程序(它只是一个已经存在的外部程序)

    handler https://received-from-RSS.com/abc
    
  6. 将发送的链接标记为watched(最好仅在内存中执行,因为它应该在 Raspberry Pi 上运行,并且我想减少 SD 卡的使用)

  7. 收集应该包含另一个链接的程序的响应handler,并将从中获得的链接传递handlerplayer程序

    player https://received-from-Handler.com/xyz
    
  8. 等待player播放完毕并关闭。然后按时间顺序发送下一个(尚未标记watched)链接至handler

    我们正在重复第 5 至第 8 阶段。

  9. 每 30 分钟Worker应更新来自 RSS 提要的链接,例如重复第 1 至第 9 阶段,将watched链接保存在内存中而不是将其发送到handler

我觉得这个功能可以用 Bash 或 Python 实现。我没有编程经验,但迫切需要启动Worker和运行。所以如果您能给我一些具体的学习材料或代码示例来帮助我编写这个特定的程序,我将不胜感激。我不是要求你帮我写,我会很感激你对任何单独步骤的帮助。我只是需要一些指导

一旦完成,我将在这里发布结果。

相关内容