原文地址:https://medium.mybridge.co/python-open-source-for-the-past-month-v-may-2019-473e9f60c73f
5 月份刚刚过去,之前看到了一篇介绍 5 月份的最热机器学习专案,刚好看到 Mybridge AI 部落格又发表了一篇 5 月份最热的 Python Github 开源专案,同样是在将近 230 个 Python 开源专案中选择最热门的前十个。
选择的十个专案包含了 Debug 工具、删除 Facebook 文章、无限云盘储存空间、AI 水军、并发运算工具、量化交易系统等等。
那么就来看看这十个专案吧!

第一名:PySnooper
这是一款除错程式码的工具,让你不需要再通过采用 print 来定位错误发生的地方和原因。目前有 11000+ 星。
PySnooper 可以让你不需要仔细选择哪些行需要打印资讯,只需要对目标函式新增一行装饰器,就可以知道很仔细看到函式的执行状况,包括哪行执行、区域性变数的变化等。
安装方法很简单,可以使用 pip 或 anaconda 两种安装方法:
$ pip install pysnooper
或者
$ conda install -c conda-forge pysnooper
一个使用例子如下,首先是需要汇入 pysnooper ,然后想知道函式 number_to_bits() 的执行情况,只需要新增 @pysnooper.snoop() 即可。
import pysnooper
@pysnooper.snoop()
def number_to_bits(number):
if number:
bits = []
while number:
number, remainder = divmod(number, 2)
bits.insert(0, remainder)
return bits
else:
return [0]
number_to_bits(6)
得到的输出结果:
Starting var:.. number = 6
15:29:11.327032 call 4 def number_to_bits(number):
15:29:11.327032 line 5 if number:
15:29:11.327032 line 6 bits = []
New var:....... bits = []
15:29:11.327032 line 7 while number:
15:29:11.327032 line 8 number, remainder = divmod(number, 2)
New var:....... remainder = 0
Modified var:.. number = 3
15:29:11.327032 line 9 bits.insert(0, remainder)
Modified var:.. bits = [0]
15:29:11.327032 line 7 while number:
15:29:11.327032 line 8 number, remainder = divmod(number, 2)
Modified var:.. number = 1
Modified var:.. remainder = 1
15:29:11.327032 line 9 bits.insert(0, remainder)
Modified var:.. bits = [1, 0]
15:29:11.327032 line 7 while number:
15:29:11.327032 line 8 number, remainder = divmod(number, 2)
Modified var:.. number = 0
15:29:11.327032 line 9 bits.insert(0, remainder)
Modified var:.. bits = [1, 1, 0]
15:29:11.327032 line 7 while number:
15:29:11.327032 line 10 return bits
15:29:11.327032 return 10 return bits
Return value:.. [1, 1, 0]
当然,它还可以只监控函式中的一部分程式码,还有其他的用法,具体可以到其 Github 上。
连结:
https://github.com/cool-RR/pysnooper?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
第二名:DeleteFB
一款用于删除 Facebook 文章的工具,目前有 2224 星。
这款工具是基于 Selenium 实现的,因此作者认为它比一些第三方 app 更加可靠,并且也不容易遭到 Facebook 的阻拦。
几种安装方法:
# 1.Install from PyPI
pip install --user delete-facebook-posts
# 2.Clone repo and run
pip install --user .
# or
pip install --user git+https://github.com/weskerfoot/DeleteFB.git
# 3.Set up a Python virtualenv, activate it, and run
pip install -r requirements.txt
其他的详细介绍可以检视该 Github 专案。
连结:
https://github.com/weskerfoot/DeleteFB?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
第三名:无限云盘储存空间(UDS : Unlimited Drive Storage)
第三名是一个可以实现不需要占据空间但能上传档案到Google云盘的一个工具,目前 3232 星。
根据它的介绍,实现这个功能主要是通过将二进位制档案分解成 base64 的格式,其实现的功能:
将档案上传到Google云盘但不会占据储存空间;下载任意储存的档案到本地电脑具体实现的逻辑是:
Google文件在Google云盘中是不占空间的将二进位制档案采用 base64 编码档案分解为Google文件编码后的档案大小总是会大于原始档,而经过 Base64 编码的二进位制资料后的档案和原始档的比例大约是 4:3单个Google文件可以储存大约一百万字节,这大约是 710 KB 大小的 base64编码资料尝试采用多执行绪上传档案,但没有显著提升速度具体的配置和使用方法可以检视它在 Github 上的介绍。
连结:
https://github.com/stewartmcgown/uds?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
第四名:eht-imaging
这是一个应用在射电干涉测量方面的成像、分析、模拟软件。目前有 5000+ 星。
具体来说,就是可以模拟和操纵 VLBI 资料并利用正则化的最大似然方法生成图片的一个 Python 模组。
连结:
https://github.com/achael/eht-imaging?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
官方文件连结:
https://achael.github.io/eht-imaging/
第五名:YouTubeCommenter
应用于 Youtube,利用 AI 技术,基于视讯标题生成评论的工具,目前有 159 星。
作者也说了目前该专案仅仅是作为一个参考,还不能真正应用。
感觉如果技术真正成熟,这就是一个 AI 水军,而且可以快速控制某些视讯的评论。
此外,这里还有作者的一个视讯介绍和演示,需要科学上网以及良好的英语听力,视讯大约是 9 分钟左右,大致简单看了作者演示的效果,确实离真正可用还是有很大的距离。
https://youtu.be/tY6SvZEic9k
连结:
https://github.com/HackerPoet/YouTubeCommenter?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
第六名:stackprinter
这也是一个除错工具,目前有 900+ 星。
它会打印出错程式码内容以及这段程式码周围的变数数值,这非常符合一个友好的互动的侦错程式:出错的程式码位置,附近变数数值,以及这个函式呼叫这些引数的原因。
安装方法很简单:
pip install stackprinter
更详细的介绍可以检视其 Github。
连结:
https://github.com/cknd/stackprinter?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
第七名:Pykka
Pykka 是对并发运算中的角色模型(actor model)的 python 版实现库,目前有 763星。
具体细节和使用例子可以检视官方文件:
https://www.pykka.org/en/latest/
安装方法如下:
pip install pykka
连结:
https://github.com/jodal/pykka?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
第八名:QTSSTM4
一个数字货币的量化交易系统。目前有 244 星。
这个系统对于初学者可能比较复杂,作者建议先看看下面三份资料:
https://github.com/xiaoyao153379/BakTst_Org)https://github.com/xiaoyao153379/BakTst_Trd)https://github.com/xiaoyao153379/scripts详细的介绍检视 Github。
连结:
https://github.com/xiaoyao153379/QTSSTM4?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
第九名:Maildown
一个简单的传送邮件的命令列界面,目前有 521 星。
Maildown 是基于亚马逊的 SES 服务,它每个月可以免费传送 62000 封邮件,可以满足大部分人的需求。
因此,在使用 Maildown 之前需要先一个亚马逊 AWS 的账号,注册地址:
https://aws.amazon.com/
然后也需要有一个 SES 账户:
https://docs.aws.amazon.com/ses/latest/DeveloperGuide/request-production-access.html
安装方法直接用
pip install maildown
更详细的介绍请检视 Github。
连结:
https://github.com/chris104957/maildown?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
第十名:modDetective
这是一个根据修改时间对档案进行排序操作的工具,目前有 119 星。
目前这个工具还在继续完善和优化中,根据作者的说法,目前查询速度还是线性的,需要继续优化。
Github 有一个简单演示的视讯。
连结:
https://github.com/itsKindred/modDetective?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
这就是作者整理出来的 5 月份 Github 上最热的十个 Python 专案,往届其他 Python、机器学习等热门专案也可以检视一下 Github:
https://github.com/Mybridge/python-open-source
或者网站:
https://medium.mybridge.co/
原文地址:https://medium.mybridge.co/python-open-source-for-the-past-month-v-may-2019-473e9f60c73f





























