5月份 Github 上最热的十个 Python 项目,从Debug工具到AI水军、量化交易系统。
2019 年第 46 篇,總第 70 篇文章
原文地址: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?bitselse: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)
第三名是一個可以實現不需要占據空間但能上傳文件到谷歌云盤的一個工具,目前?3232?星。
根據它的介紹,實現這個功能主要是通過將二進制文件分解成?base64?的格式,其實現的功能:
將文件上傳到谷歌云盤但不會占據存儲空間;
下載任意存儲的文件到本地電腦
具體實現的邏輯是:
谷歌文檔在谷歌云盤中是不占空間的
將二進制文件采用?base64?編碼文件分解為谷歌文檔
編碼后的文件大小總是會大于源文件,而經過?Base64?編碼的二進制數據后的文件和源文件的比例大約是?4:3
單個谷歌文檔可以存儲大約一百萬字節,這大約是 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?星。
整個系統的結構如下圖所示:
這個系統對于初學者可能比較復雜,作者建議先看看下面三份資料:
BakTst_Org
BakTst_Trd
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
歡迎關注我的微信公眾號--機器學習與計算機視覺,或者掃描下方的二維碼,大家一起交流,學習和進步!
如果覺得不錯,在看、轉發就是對小編的一個支持!
往期精彩推薦
機器學習系列
Github項目 & 資源教程推薦
總結
以上是生活随笔為你收集整理的5月份 Github 上最热的十个 Python 项目,从Debug工具到AI水军、量化交易系统。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux下的编辑器整理
- 下一篇: RecyclerView学习(二)之缓存