2022年你应该解决的全新自动化项目
image.png如果你正在学习 Python,你应该尝试自动化你的日常任务。
您不仅可以通过实现您已经知道的知识来学习更多 Python,而且最终,您可以看到所有的辛勤工作是如何得到回报的。
最近,由于我没有时间,我经常将任务自动化。多亏了这一点,我有了 5 个新项目,我将它们分为初级、中级和高级。
您将找到解决每个项目的完整脚本和教程的链接。另外,我给他们每个人留下一个挑战来测试你的 Python 技能。
1. 自动化 Microsoft Word(初学者项目)
您必须使用 Word 多少次来创建求职信、合同协议、简历或报告?
如果你数不清,这个项目是给你的。
在这个项目中,我们将使用 Python 和一个名为docxtpl
. 为此,我们需要一个要自动化的文档模板。在模板中,我们必须在以后要替换的每个单词上引入占位符。我们使用{{}}
占位符的符号。
为了让事情变得更容易,我已经为求职信创建了一个模板。这是我们将使用的模板的外观。
image.png为了让这个项目对初学者友好,我们只需要使用 Python 和docxtpl
.
在下面的视频中,您可以下载此模板,获取脚本,然后按照步骤解决此项目。
挑战:如果您想将此项目提升到一个新的水平,请尝试从 Excel 文件中提取数据并将其引入 Word 模板中。
上面教程的第二部分有一个如下表所示的 Excel 文件。
+--------+-----+------------+----------------+
| 姓名 | ... | 地址 | 工作 |
+--------+-----+------------+----------------+
| 弗兰克 | ... | 123 大道 | 数据科学家 |
| ... | ... | ... | ... |
| 约翰 | ... | XYZ 大道 | 网页开发者 |
+--------+-----+------------+----------------+
您应该为表格的每一行生成一个新文档。
2. 自动发送电子邮件(初学者项目)
我以前在工作中做的最无聊的任务之一就是发送电子邮件。
重要的电子邮件应该被仔细阅读和回复,但是作为日常生活一部分的电子邮件应该是自动化的!这就是这个初学者项目的全部内容。我们将使用 Python 自动发送电子邮件。
如何自动化这个任务?我们只需要使用内置模块smtplib
和email
. 我们需要smtplib
使用简单邮件传输协议 (SMTP) 发送电子邮件,以及email
读取、写入和发送更复杂的 MIME 消息的包。
下面是使用 Gmail 自动发送电子邮件的分步教程。以下是它涵盖的内容:
- 如何打开两步验证以便能够在 Python 中使用 Gmail
- 如何使用 Python 发送普通电子邮件
- 如何处理您可能遇到的 SSL 错误
挑战:如果您想让这个项目更具挑战性,请尝试将图像附加到您的电子邮件中。为此,您需要使用该imghdr
库。
3. 自动填写 Web 表单(中级项目)
互联网上最繁琐的任务之一是填写网络表格。
我的意思是!一遍又一遍地填写你的姓名、电话号码、地址和更多信息很无聊。当您必须拿出虚假数据来填写调查时,情况会变得更糟。
在这个中间项目中,我们将使用 Python 将假数据填充到 Web 表单中。如何自动化这个任务?我们将使用一个 Web 自动化库,它允许我们执行 Web 操作,例如访问网站、输入文本和单击按钮。
下面有一个关于如何使用 Python 自动执行这项繁琐任务的分步教程。以下是它涵盖的内容:
- 如何在一个表格中填写数据
- 如何使用 faker 库生成虚假数据
- 如何填写多个网络表格
挑战:我们在本教程中填写的表格具有简单的元素。如果您想让这个项目更具挑战性,请在表单中添加高级元素,例如下拉菜单和多项选择题。然后尝试自动化这个高级表单。
4.自动化火种(高级项目)
在约会应用程序上向右滑动非常耗时,以至于一旦你找到匹配项,你就会在网上约会最重要的部分变得懒惰——将匹配项转换为实际约会!
这个高级项目包括创建一个适合您滑动的机器人,以便您以后可以处理您的取货线路并提高您的转化率。
是什么让这个项目如此先进?很多东西。仅举几例:
- 登录:无论您使用什么登录选项(Google、Facebook),Tinder 都会向您的电话号码发送一个代码。您需要使用此代码登录 Tinder。为了轻松解决这个问题,我们需要保持 Google Chrome 会话处于活动状态,然后使用 Selenium 控制它。
- 棘手的按钮:如果您使用该
.click
方法单击“赞”按钮,有时可能会出错。对于这个特定的网站,我们需要使用替代方案。 - 弹出窗口:向右滑动时,您可能会遇到不同的弹出窗口。你必须摆脱它们。
下面有一个教程可以帮助您处理所有这些问题。
挑战:让您的机器人向您的比赛发送随机接送线路。
但这只是为了这个项目!如果您想获得更多回复,请不要自动发送消息。我试过了,它不如自己发送高质量的消息有效。
5. 在工作中自动化你自己的任务(超级高级项目)
毫无疑问,将工作中繁琐的任务自动化是您能做的最具挑战性的事情。
为什么?很可能没有分步教程来指导您,您必须考虑需要使用什么库以及自动化它的最佳方法。
要找出要自动化的内容,请问自己以下问题:
- 我会一遍又一遍地做哪些任务?
- 我可以使用 Python 自动化哪些特定部分?
- 我应该使用哪些 Python 库来自动化这个项目?
如果您知道问题 #3 的答案,即使您没有找到有关如何自动执行特定任务的教程,您也可以查看文档或阅读指南以开始使用该库。
在评论中让我知道您现在正在自动化什么任务!
网友评论