跳转到主要内容

Python包,用于任务完成后播放声音。

项目描述

Pypi project Pypi total project downloads

Python包,用于任务完成后播放声音。回调函数也适用于jupyter notebook,因此如果您在远程机器上的notebook上工作,它将在您的浏览器中播放音频,而不是在服务器上。

我该如何安装此包?

您可能需要安装一些您可能尚未安装的包

sudo apt install python3-dev
sudo apt install libasound2-dev

最后,像往常一样,只需使用pip下载即可

pip install ringbell

支持我的工作 ❤️

如果您喜欢我的工作,并且可能节省了您宝贵的时间,请在GitHub上支持我 ❤️

异常和Jupyter Notebooks的集成

在Jupyter Notebooks中,现在可以通过一行代码将Ringbell与异常集成,当执行成功时播放积极的声音,当执行失败时播放消极的声音。

类似的支持已添加到普通脚本中,但仅限于异常,因为我不知道脚本结束的钩子事件。

执行至少一分钟后的通知

由于在大多数Jupyter Notebooks中,特别是对于实验,会有几个非常快的单元格和一些非常长的单元格,我们不想通过声音打扰用户。我们只想在脚本执行或Jupyter Notebooks中单元格执行开始后经过足够长的时间时提醒用户。

为此,只需按如下方式导入ringbell包

import ringbell.auto

即时通知

如果您希望对每个单元格和异常都有即时通知。

import ringbell.immediate

所有异常

如果您希望对所有异常都有即时通知。

import ringbell.all_exceptions

自定义时间间隔

您还可以自定义时间间隔,如下所示

from ringbell import auto_ringbell
auto_ringbell(
    minimum_execution_time = 60,
    only_exceptions = False,
    good_sound="sample_for_nominal_execution",
    bad_sound="sample_for_exceptions"
)

使用示例

这相当简单,只需这样做

from ringbell import RingBell

def my_long_task():
    # Do stuf...

    # And when it is finished...
    RingBell(
        sample = "microwave",
        minimum_execution_time = 0,
        verbose = True
    )

有多少个声音?嗯,只需列出它们

from ringbell import RingBell

print(RingBell.available_samples())

有什么关于自定义声音的吗?只需将其作为参数传递。

from ringbell import RingBell

def my_long_task():
    # Do stuf...

    # And when it is finished...
    RingBell(path="path/to/my_custom_sound.mp3")

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

ringbell-1.0.2.tar.gz (3.9 MB 查看哈希值)

上传时间 源代码

由以下支持