电子说
过去一个月里,我们对近 250 个 Python 开源项目进行了排名,并挑选出热度前 10 的项目。这份清单的平均 github star 数量高达 1140,涵盖了包括性能分析、提取 PDF 中的表格、HTTP Framework、Refactoring, Unix-gazing shell、HTTP APIs、PaperTTY 等主题,希望你能从中找到一个你所感兴趣的项目深入探究。
▌开源项目一:Py-spy
Py-spy 是一种由 Python 程序驱动的采样分析器,它允许可视化 Python 程序内容,而无需重新启动程序或以任何方式修改代码。它是用 Rust 语言编写的,运行速度快,计算成本极低,不需要在配置 Python 程序的进程中同时运行,也不会以任何方式中断当前正在运行的程序,这意味着 Py-Spy 可以安全地用于 Python 代码的生成。此外,Py-Spy 适用于 Linux,OSX 和 Windows 等平台,并支持在最新版本的 CPython 解释器上进行分析工作。
Github 链接:
https://github.com/benfred/py-spy?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
▌开源项目二:Camelot
Camelot 是一款用于从 PDF 文件中提取表格的 Python 应用库。它能够帮助你轻松地从 PDF 文件中提取出所需的表格数据并转化为 Pandas DataFrame 格式,并以 JSON、EXCEL 或 HTML 的格式输出。
Github 链接:
https://github.com/socialcopsdev/camelot?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
▌开源项目三:Responder
Responder 是一款基于 Python 的 HTTP 服务框架,它将为你提供一个预安装版本的 ASGI 应用程序,包含 jinja2 模板,基于 uvloop 的生产网络服务器,能够自动响应 gzip 压缩服务请求。
Github 链接:
https://github.com/kennethreitz/responder?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
▌开源项目四:Bowler
Bowler:是一种用于在语法树级(syntax tree level)操纵 Python 的重构工具。它可以实现安全而大规模的代码修改任务,同时保证生成的代码可以编译和运行。它提供了一个简单的命令行界面和流畅的 Python API 接口,用于在代码中进行复杂的代码修改。具体来说,Bowler 通过一系列选择器、过滤器和修改器来调用 Query API 接口实现脚本重构。使用现有的 API 可以进行许多简单的修改,但你也可以根据需要,自定义选择器、过滤器和修改器来构建更复杂的重构过程。有关更多信息,可以查阅项目主页的介绍。
Github 链接:
https://github.com/facebookincubator/bowler?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
▌开源项目五:Xonsh
Xonsh 是一种基于 Python,专注于 Unix 的 Shell 语言和命令行提示符的跨平台项目。该语言是 Python 3.4+ 的超集,且带有额外使用于 Bash 和IPython 的其他 shell 原语。Xnosh 适用于专家和新手的日常使用,并支持所有主要的操作系统,包括 Linux,Mac OSX 和 Windows。
Github 链接:
https://github.com/xonsh/xonsh?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
▌开源项目六:Molten
Molten 是一个适用于 Python 3.6 及更高版本构建 HTTP API 的小型,可扩展,快速且高效的框架。
Github 链接:
https://github.com/evyatarmeged/Raccoon?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
▌开源项目七:Dbxfs
Dbxfs 是一款基于 Python3.5+ 的,用于 Dropbox 的用户文件系统。它允许你挂载 Dropbox 文件夹,就像将它挂在本地文件系统上一样。Dbxfs 与官方Dropbox 客户端的不同之处主要在于:
访问需要网络连接
访问不需要磁盘空间,但如果磁盘空间可用,则会缓存。
Dbxfs 已经在 OpenBSD,Linux 和 macOS 平台上进行了测试,但它也能够在任何提供与 FUSE 兼容的库或任何能够挂载 SMB 共享的 POSIX 系统上运行,而对 Windows 平台的支持即将推出。在诸如 ARM 这样非 x86 架构上运行时,Dbxfs 不需要也不依赖特定的文件系统。
Github 链接:
https://github.com/rianhunter/dbxfs?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
▌开源项目八:Twitter-cleanup
PyPortfolioOpt 是一款基于 python 的金融投资组合优化的开源项目,其中包括经典有效的前沿和实验方法。它应用广泛且易于扩展,对投资者和从业者同样适用。PyPortfolioOpt 可以帮助你高效地组合 alpha 生成器。你可以访问 ReadTheDocs 上的文档以深入了解该项目。
Github 链接:
https://github.com/robertmartin8/PyPortfolioOpt?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
▌开源项目九:Sotawhat
Sotawhat 能够通过抓取 arxiv 论文来总结论文摘要并返回最新的研究结果,它能帮助你了解每天最新的论文和研究进展。
Github 链接:
https://github.com/chiphuyen/sotawhat?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
▌开源项目十:PaperTTY
PapertTTY 是一个通过命令行驱动的 Python 模块,用于将 Linux 虚拟终端或标准输入的内容呈现到 Waveshare 电子显示器上。它具有如下重要特征:
适用于Raspberry Pi 和Raspbian 的设计。
它能够帮助你轻松地运行交互式控制台程序(包括vim,tmux,irssi,nethack 等),并通过脚本显示你想要的任何内容。
运行速度快,特别是对于小字体,还可以交互式使用,但还需进一步改进甚至更快。此外,它在Raspberry Pi 3 上的使用比Zero 更有趣。
只有更改的区域才会在显示屏上更新,因此键入比全屏滚动更快。
它能够绘制光标并在图像移动时更新图像。
无闪烁。
允许更改字体,字体大小,方向和一些其他参数。
支持TrueType 和位图字体(采用PIL 格式)。
捆绑systemd 服务单元,可以在启动时尽早启动服务并优雅地停止服务。
目前仅支持使用单色 2.13“HAT 进行测试,但它也适用于其他型号,其他功能还有待完善。
Github 链接:
https://github.com/joukos/PaperTTY?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
全部0条评论
快来发表一下你的评论吧 !