用 Python 实现一切自动化
介绍
自动化的各种应用案例
以更少的资源做更多的事情
自动化生活的工具或技能
结论
参考
wemake-python-styleguide
介绍
Python 是一种适合初学者入门的通用语言。由于其内置的标准库和丰富的 Python 生态系统工具,Python 也被广泛用于自动化编程。
除了系统管理员之外,任何人都可以利用这项功能来自动化流程中的某些部分,从而大大提高工作效率。从数据整理到市场调研数据收集,都能派上用场。
由于Python易于上手且生态系统完善,因此被广泛应用于DevOps、数据科学和市场营销等领域。
自动化的各种应用案例
自动化应用场景之一是构建用于销售或营销目的的名单。这可以通过使用 Selenium、Scrapy、Beautiful Soup 等数据抓取工具,从 Techcrunch、LinkedIn 和其他行业网站的公司列表中收集数据来实现。
第二个用例是设置服务器配置,例如 Puppet 或 Chef,以便在云服务器或客户端上部署软件。这包括系统管理任务,例如备份备份服务器上的文件。
另一个我认为很常见的自动化方式是通过减少手动操作时间来提高工作效率,例如数据在不同地点之间的传输。它可以很简单,比如将数据从一个 Excel 文件复制到另一个文件;也可以是电子邮件自动回复,或者设置定时任务来运行软件以完成特定任务。比如我自己就写了一个脚本,每天自动更换桌面壁纸,换成必应每日精选图片。
以更少的资源做更多的事情
由于需要实现工作流程自动化以减少特定任务的人工工作量,以及 DevOps 实践在采用它的公司中日益普及,因此出现了这种情况。
我们鼓励希望提升技能或加入 DevOps 行列的 QA 测试人员和系统管理员放弃 shell 脚本,转而使用 Python。
通过《自动化枯燥的工作》之类的书籍,系统管理员和QA测试人员可以学习如何编写Python脚本来自动化他们的流程。例如,在测试状态时通过电子邮件或Slack发送通知提醒,或者将其连接到Jenkins、Travis CI、CircleCI、GitLab CI等持续集成/持续交付(CI/CD)系统,从而自动化测试、安全合规和软件部署等手动工作。
自动化生活的工具或技能
自动化所需的通用技能和用途是理解 Python 编程以及使用 git 版本控制来存储脚本。
像Google IT Automation这样的课程,配合像Hacking Sales、Automate the boring stuff、DevOps Hand Book这样的书籍,可以为自动化提供一个起点。
以下是可用于自动化特定任务的 Python 相关工具列表:
结论
希望这篇文章对那些有兴趣使用 Python 实现任务自动化的人有所帮助。
这篇介绍将向您展示 Python 在自动化方面的各种应用场景,这些场景并不局限于开发人员的领域。它甚至包括用于自动化工作流程、测试自动化或服务器管理的工具。
如果你喜欢这篇文章,请订阅我的冒险家通讯,其中包含我每周在Python、Web 开发、创业领域偶然发现的有趣内容。
您也可以关注我,获取我在Dev上发表的文章的最新更新 。原文标题为《用 Python 自动化一切》,阅读时间:3 分钟,封面图片来自Unsplash 的 Dominik Scythe。
参考
- DevOps手册
- 销售黑客
- 自动化枯燥的工作
- Google IT自动化
- 47:自动化熊猫 - 安迪·奈特
- 系统管理
- 在 Zapier 中使用 Python 实现所有事情的自动化
- 不要学编程,要学自动化
- 持续集成
- 行为驱动发展
- 面向系统管理员的 Python
- 为什么思科要教我Python?