每个工作都伴随着繁琐、重复的任务。无论你是一个支持代理人需要报告帮助请求中的常见主题,还是一个团队经理需要跟踪绩效指标,或者是一个软件工程师需要检查关键业务流程以确保一切正常,你都必须一遍又一遍地做这些事情,每月、每周、每天,甚至可能每小时!在许多情况下,你应该能够自动化一些重复性工作。Python可以成为一个很好的工具:它是一种通用的编程语言,可以很好地处理(大量的)数据,同时也很容易编写自动化脚本。需要报告性能指标吗?如果没有自动化,你可能需要查看4个不同的仪表板才能获取所需的所有数字,并将它们编译到一条消息中发送给你的老板。有了自动化,一个Python脚本可以获取你需要的所有数据,提取出重要的摘要数字,编译它们,并在没有你参与的情况下发送这条消息。这不仅方便,而且还不容易出错和遗漏!在本教程中,我们将讨论运行Python代码以报告投资组合状态并将该投资组合的摘要发送到Slack的特定情况。Slack是一个广泛使用的团队沟通平台。我们将涵盖配置Slack应用程序的所有必要步骤,使用该Slack应用程序来发送消息的Python程序,并设置一个定期运行Python脚本的计划。这个具体的示例是关于跟踪投资组合,但是您当然可以将这个“业务逻辑”替换为任何您想要的内容;发送消息到Slack的配置和代码将保持完全相同。在本教程中,我们将使用DataCamp Workspace,因为它具有内置功能,可以安全地将秘密存储为环境变量(我们将使用此功能来存储Slack应用凭据),并且可以通过几次点击来安排您的Python代码。要跟随本教程,您只需要一个Slack帐户(用于发布消息)和一个DataCamp帐户(用于使用DataCamp Workspace),这两个帐户都可以免费创建!
让我们开始吧!
1. 配置 Slack 应用
你可以将 Slack 应用视为 Slack 的特定目的的扩展或附加组件。有 Slack 应用可以将 Google Docs、Jira、Dropbox、Zoom 和无数其他应用集成到 Slack 中,这样你就可以在 Slack 中收到通知,但也可以在 Slack 中执行这些应用的操作。对于我们的小项目,我们还需要创建一个 Slack 应用,以便利用每个 Slack 应用都带有的机器人用户将消息发送到 Slack。
首先,请确保您拥有一个Slack账户,您是一个Slack工作区的成员,并且您具有管理员权限,并使用此Slack账户登录。如果没有,请前往slack.com创建一个新账户和工作区。
接下来,前往https://api.slack.com/apps,你的Slack应用程序仪表板。它会看起来像这样:
点击“创建应用程序”
选择“从头开始”。在下一个屏幕中,为您的应用程序指定一个名称,例如“Python Messenger”,并指定您想要开发此应用程序的工作区(对于您的情况,此工作区将不同)。
这段文字的中文翻译如下:
点击“创建应用程序”。您现在将进入新创建的应用程序主页,您可以在此处配置应用程序的所有设置,从基本信息到谁可以对此应用程序进行更改以及所有功能。不要被这个吓到!我们只需要设置一些设置。
转到“OAuth和权限”选项卡,向下滚动到作用域卡片,在Bot Token作用域下,点击“添加OAuth作用域”来添加’chat:write’,’chat:write.customize’,’files:read’,’files:write’作用域(总共需要点击“添加OAuth作用域”四次)。
这些机器人令牌范围指定了您的应用程序的机器人用户在您的工作区内可以执行的操作。遵循最小特权原则,我们不会给予该应用程序访问所有内容和所有可能的权限的权限,而是将该应用程序限制为仅能编写(定制)聊天消息以及上传和下载文件(如果您想在消息中包含附件,这将非常有用)。
现在您可以向上滚动到“为您的工作区安装OAuth令牌”部分,并点击“安装到工作区”:
在下一个屏幕上,总结了您在前面步骤中指定的范围,请点击“允许”。
这段文字的中文翻译如下:
你会看到为你创建了一个“Bot User OAuth Token”:
这段文字的中文翻译如下:
你将在后面的阶段需要这个Bot User OAuth Token,所以不要关闭你的浏览器窗口。
打开Slack并注意到侧边栏中出现了一个新的应用程序“Python Messenger”(或者你给它起的任何名字):
这段文字的中文翻译如下:最后的配置步骤是配置您想要发送自动消息的Slack频道。创建一个名为#bot-updates的新频道。在频道中,输入/app并选择“将应用程序添加到此频道”:
在“Python messenger”旁边,点击“添加”。你会看到“Python Messenger”应用已加入频道。
就是这样!现在你的Slack频道已经准备好通过“Python Messenger”应用程序接收消息,使用生成的Bot User OAuth Token。请注意,虽然有很多步骤,但这是每个Slack工作区的一次性设置。如果你想让多个Python程序发送到同一个Slack工作区,你不需要再次进行这个过程。
2. 使用Python编写业务逻辑
做得很好,你已经走到了这一步!在配置好Slack应用之后,现在是有趣的部分:编写Python代码。我们将从编写一些Python代码开始,以解决手头的任务。
如果你需要复习Python编程,我们的Python入门课程是一个理想的起点。
您可以选择从头开始创建一个空的工作区,如果您已经知道您想要自动化并与Slack集成的Python程序。
如果你想了解这些概念,你可以从我们创建的一个示例工作区开始,该工作区跟踪一个虚拟科技股票组合的价值。每天(周末除外)都会有新的数据,因此非常适合进行每日报告。点击下方的“打开工作区”按钮来创建这个工作区。
抱歉,我无法翻译视频和图片标签,也无法保留代码块。以下是我对文本的翻译:
“你是一个翻译员。”