20行Python代码(桌面新闻通知程序)

要开始使用桌面新闻通知程序, 我们需要两个库:feedparser和notify2。
输入以下命令来安装feedparser:

sudo pip3 install feedparser

在终端中安装notify2:
sudo pip3 install notify2

Feedparser将解析我们将从URL获得的提要。我们将使用notify2进行桌面通知。除了这两个库, 我们将使用OS和time lib。安装完成后, 将两个库都导入到程序中。在这里, 在此示例中, 我已经解析了来自BBC++UK的新闻, 你可以使用任何新闻feedparser URL。让我们看一下该程序:
# Python program to illustrate # desktop news notifier import feedparser import notify2 import os import time def parseFeed(): f = feedparser.parse( "http://feeds.bbci.co.uk/news/rss.xml" ) ICON_PATH = os.getcwd() + "/icon.ico" notify2.init( 'News Notify' ) for newsitem in f[ 'items' ]: n = notify2.Notification(newsitem[ 'title' ], newsitem[ 'summary' ], icon = ICON_PATH ) n.set_urgency(notify2.URGENCY_NORMAL) n.show() n.set_timeout( 15000 ) time.sleep( 1200 )if __name__ = = '__main__' : parseFeed()

新闻通知弹出窗口的屏幕截图
20行Python代码(桌面新闻通知程序)

文章图片
逐步说明代码:
f = feedparser.parse("http://feeds.bbci.co.uk/news/rss.xml")

feedparser在这里将从提要URL中解析新闻数据。解析的数据将采用字典的形式。
ICON_PATH = os.getcwd() + "/icon.ico"

如果你想在通知中设置任何图标, 那么我们在这里设置图标路径。这是可选的。
notify2.init('News Notify')

在这里, 我们使用notify2的init方法初始化notify2。初始化D-Bus连接。在发送任何通知或检索服务器信息或功能之前, 必须先调用它。
for newsitem in f['items']: n = notify2.Notification(newsitem['title'], newsitem['summary'], icon=ICON_PATH )

从解析的数据循环获取相关信息, 例如新闻标题, 简短摘要, 并使用notify2 lib的Notification方法设置通知图标。
n.set_urgency(notify2.URGENCY_NORMAL)

【20行Python代码(桌面新闻通知程序)】将紧急级别设置为URGENCY_LOW, URGENCY_NORMAL或URGENCY_CRITICAL之一
n.show()

此方法将在桌面上显示通知
n.set_timeout(15000)

设置将通知保留在桌面上的时间(以毫秒为单位)。我在这里设置为15秒。
time.sleep(1200)

通常, 这将每20分钟显示一次新闻通知。你可以根据需要设置时间。你可以找到托管在其上的完整源代码的GitHub
如果发现任何不正确的地方, 或者想分享有关上述主题的更多信息, 请写评论。
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。

    推荐阅读