在 Python/Django 世界里,我们有句谚语:我们因语言而来,因社区而留。这对我们大多数人来说都是真的,但让我们留在 Python 世界的还有另一件事,那就是拥有一个想法并快速在午餐时间或晚上几个小时内完成它有多么容易。
本月,我们将深入探讨我们喜欢使用的 Python 库,以便快速满足那些副项目或午餐时间的需求。
要动态地将数据保存到数据库中:Dataset
Dataset 是我们的首选库,当我们想快速收集数据并将其保存到数据库中,而我们事先不知道最终的数据库表会是什么样子时。Dataset 具有简单而强大的 API,可以轻松地将数据放入并在以后进行排序。
Dataset 构建在 SQLAlchemy 之上,因此扩展它会感觉很熟悉。使用 Django 内置的 inspectdb 管理命令,底层数据库模型可以轻松导入 Django。这使得处理现有数据库变得非常轻松。
要从网页抓取数据:Beautiful Soup
Beautiful Soup(截至撰写本文时为 BS4)使从 HTML 页面中提取信息变得容易。每当我们需要将非结构化或松散结构化的 HTML 转换为结构化数据时,它都是我们的首选。它也非常适合处理可能无法读取的 XML 数据。
用于处理 HTTP 内容:Requests
Requests 可以说是处理 HTTP 内容的黄金标准库之一。每当我们需要使用 HTML 页面甚至 API 时,Requests 都能满足我们的需求。它的文档也非常完善。
用于编写命令行实用程序:Click
当我们需要编写原生 Python 脚本时,Click 是我们最喜欢的用于编写命令行实用程序的库。API 简单明了,考虑周全,只有少数几种模式需要记住。文档也很棒,这使得查找高级功能变得容易。
用于命名事物:Python Slugify
众所周知,命名事物很困难。Python Slugify 是一个有用的库,用于将标题或描述转换为唯一(ish)标识符。如果您正在开发 Web 项目并且想要使用 SEO 友好的 URL,Python Slugify 可以使这项工作变得更容易。
用于处理插件:Pluggy
Pluggy 相对较新,但它也是将插件系统添加到现有应用程序的最佳和最简单方法之一。如果您曾经使用过 pytest,那么您在不知不觉中已经使用过 pluggy。
用于将 CSV 文件转换为 API:Datasette
Datasette,不要与 Dataset 混淆,是一个出色的工具,可以轻松地将 CSV 文件转换为功能齐全的只读 REST JSON API。Datasette 具有大量功能,包括图表和地理(用于创建交互式地图),并且可以通过容器或第三方 Web 主机轻松部署。
用于处理环境变量等等:Envparse
如果您需要解析环境变量,因为您不想将 API 密钥、数据库凭据或其他敏感信息保存在源代码中,那么 envparse 是您的最佳选择之一。Envparse 处理环境变量、ENV 文件、变量类型,甚至还处理预处理器和后处理器(以防您想确保变量始终为大写或小写,例如)。
您是否有不在本列表中的、最喜欢的用于副项目的 Python 库?请在评论中分享。
1 条评论