过去一个月里,Mybrige AI测评了多达 250 个开源项目并比较了这些项目的最新和主力版本,根据多种指标进行排名,给大家找出最干货的项目Top10。
● 入榜项目Github平均得星:1,140 ⭐️
● 涵盖话题:性能分析,PDF图表提取,HTTP框架,重构,Unix-gazing shell,HTTP API,Dropbox,财务,脚本,PaperTTY
希望以下开源项目能助你兴趣发扬、灵感激荡。
第一名
Py-spy: Python 程序性能分析利器
Github得星: 2951 ⭐️
Py-spy 能够可视化你的 Python 程序的 CPU 耗时情况(除了默认的界面,还支持生成火焰图哦),而无需重新启动程序或以任何方式修改代码。 Py-Spy 非常轻量化,用Rust编写,速度快,不会在与配置的 Python 程序相同的进程中运行,也不会以任何方式中断正在运行的程序,可以十分安全地用于生产环境的 Python 代码。
Py-Spy 适用于 Linux,OSX 和 Windows,并支持分析所有最新版本的 CPython 解释器(版本2.3-2.7和3.3-3.7)。
项目地址:https://github.com/benfred/py-spy
第二名
Camelot: PDF 图表提取库
Github得星: 1434⭐️
● 支持命令行界面,另外还有一个 web 界面可选
● 可以根据精确度和空格等指标排除坏表,而无需手动查看每个表。
● 每个表都是一个pandas DataFrame,它可以无缝集成到ETL和数据分析工作流中。
● 支持导出为多种格式,包括JSON,Excel和HTML。
● 不支持扫描版PDF
项目地址:https://github.com/socialcopsdev/camelot
第三名
Responder: 探索新的 web 框架
Github得星: 1470 ⭐️
responder 是一个 python 实现的 web 框架,基于 Starlette 封装,和 python 其他的 web 框架如 django,flask 相比,它速度更快。
作者想要借它探索一种新的web框架的模式。把 Flask 和 Falcon 中的优雅细节再加上一些作者自己的新想法,结合成一个单独的框架,作者还考虑将 Requests 库中的 API 原语也吸纳进来。
虽然它目前还不是一个十分成熟的 web 框架,但是这种创新的精神值得我们学习。
项目地址:https://github.com/kennethreitz/responder
第四名
Bowler: Facebook 的 Python 代码重构工具
Github得星:715 ⭐️
Bowler 是一个实现语法树级别操作的Python重构工具,由 Facebook 开源。它能够在实现安全、大规模的代码修改的同时确保生成的代码可以编译和运行。Bowler 提供简单的命令行界面和流畅 API,用于直接在 Python 代码中实现复杂的代码修改。
Bowler 是基于标准 Python 库的 lib2to3 构建的,对于常见组件只需要几个第三方依赖项,如click。
项目地址:https://github.com/facebookincubator/Bowler
第五名
xonsh:看得懂 Python 的 Shell
Github得星: 2859 ⭐️
苦于不会 Shell?有了 xosh,在 Shell 里写 Python 代码不是梦!你可以在 xosh 里调用 Python 的各种函数,也可以写常规的 Shell 语言,如此把 Shell 强大的系统操作和 Python 的丰富优雅完美混搭,同时支持使用 Prompt Toolkit 补全 Shell 命令和 Python 表达式。补全有可视化提示,会显示可能的补全并有下拉列表。
项目地址:https://github.com/xonsh/xonsh
第六名
Molten: HTTP API 框架
Github得星: 666⭐️
使用Python 3.6及更高版本构建HTTP API的轻量化、可扩展,快速且高效的框架。它的核心简单易懂,作者力图让任何人都能阅读并只需要一个下午的时间就能完全理解源代码。同时高效、稳定,尽可能避免重大更改。也支持用类型注释进行静态类型检查以确保类型安全。
项目地址:https://github.com/Bogdanp/molten
第七名
Dbxfs
Github得星: 450 ⭐️
有了 dbxfs,你可以把Dropbox文件夹当作本地文件系统一样挂载,OpenBSD,Linux和macOS上测试可用,原则上可以在任何兼容 FUSE 库或能够挂载 SMB 共享的 POSIX 系统上运行。Windows支持即将推出。 由于运行在像 ARM 这样的非 x86 架构上,dbxfs无需特定的文件系统。
与官方Dropbox客户端的主要不同:
● 访问需要Internet连接
● 访问不需要磁盘空间,当磁盘空间可用时会缓存
项目地址:https://github.com/rianhunter/dbxfs
第八名
PyPortfolioOpt:投资组合优化库
Github得星: 243 ⭐️
本项目包括经典方法(Markowitz 1952),建议的最佳实践(例如协方差收缩),以及领域大量最新动向和特性,如L2正规化,缩小协方差,分层风险平价。
提供四组主要功能(当然它们密切相关):
● 预期收益估值
● 资产的协方差估值
● 待优化目标函数
● 有效边界参数
项目地址:https://github.com/robertmartin8/PyPortfolioOpt
第九名
Sotawhat:arxiv 论文爬虫
Github得星: 508 ⭐️
arxiv 是物理学家保罗·金斯巴格发起的一个开放存取论文预印本的网站,涉及物理学、数学、计算机科学与生物学等领域的论文。
只需输入论文关键词,这个脚本就会为你抓取 arxiv 上的论文并总结摘要,让你轻松同步最新研究结果。
项目地址:https://github.com/chiphuyen/sotawhat
第十名
PaperTTY:Python 渲染电子墨水屏
Github得星:470 ⭐️
这是一个实验性的命令行驱动的Python模块,用于将 Linux 虚拟终端(/ dev / tty [1-63])或标准输入的内容呈现到Waveshare电子纸显示器上。
你可以在你的 Raspberry Pi 或 Raspbian 上,运行交互式控制台程序(vim,tmux,irssi,nethack …)并使用脚本轻松显示任何内容。无闪烁,允许更改字体、字体大小、方向等参数,同时支持 TrueType 和位图字体(采用PIL格式)。
项目地址:https://github.com/joukos/PaperTTY
编译:佑铭
参考:https://medium.mybridge.co/python-open-source-of-the-month-v-oct-2018-db86b787ec74