python 資源集合與開源硬件

目錄

網頁框架

Django

Flask

Tornado

其他網頁框架

用戶圖形接口相關

網絡相關

數據庫相關

遊戲相關

開源框架

大數據相關

網絡爬蟲

測試

破解腳本

圖表及圖像相關

運維相關

樹莓派

第三方平臺

IDE

其他

博客與播客及書籍文檔

他人總結


網頁框架

Django

Flask

Tornado

其他網頁框架

  • Bottle - Bottle是一個小型的輕量網絡開發框架,同時速度也很快。
  • Wooey - Wooey 是一個簡單的Python腳本的Web UI 界面。它能夠提供日常數據分析,文件處理等功能。2015年出現的十大流行Python庫 。

========

用戶圖形接口相關

  • pyglet - Pyglet是一個純Python語言編寫的跨平臺框架,用於開發多媒體和窗口特效應用。
  • kivy - Kivy 是一個開源工具包能夠讓使用相同源代碼創建的程序能跨平臺運行。它主要關注創新型用戶界面開發,如:多點觸摸應用程序。Kivy 還提供一個多點觸摸鼠標模擬器。基於 Cython(C extensions for Python) 構建,當前支持的平臺包括:Linux、Windows、Mac OS X和Android。
  • Py2exe - 把Python腳本轉換爲windows平臺上面可以運行的可執行程序(*.exe)的工具,通過修改源碼可以支持python3.0的代碼。
  • pyinstaller - 把Python腳本轉換爲能直接運行的可執行文件,支持python2.7、python3.3-3.5,支持Windows (32-bit and 64-bit)、Linux (32-bit and 64-bit)、Mac OS X (32-bit and 64-bit)平臺。
  • cx_Freeze - 把Python腳本轉換爲能直接運行的可執行文件,支持python3.x,特別簡單。
  • Tkinter - Tkinter的是Tk的GUI工具包,與Python附帶的Python接口。
  • wxPython - wxPython一個開源的Python接口的wxWindows。
  • PyQt - PyQt是一個創建GUI應用程序的工具包。它是Python編程語言和Qt庫的成功融合。Qt庫是目前最強大的庫之一。
  • Eric - Eric一個支持python、Ruby的強大IDE,與PyQt配合功能非常強大。

========

網絡相關

  • aiohttp - aiohttp是一個爲 asyncio 提供了簡潔易用的 HTTP 客戶端和服務器的庫。
  • Requests - Requests是python的一個HTTP客戶端庫,跟urllib,urllib2類似。

========

數據庫相關

  • SQLAlchemy - SQLAlchemy一個知名企業級的持久化模式的,專爲高效率和高性能的數據庫訪問設計的,改編成一個簡單的Python域語言的完整套件。它採用了數據映射模式(像Java中的Hibernate)而不是Active Record模式(像Ruby on Rails的ORM)。
  • SQLObject - SQLObject是一個介於SQL數據庫和Python之間映射對象的Python ORM, 類似於Ruby on Rails的ActiveRecord模式。
  • Peewee - Peewee是一個小型但是十分強大的庫,支持通過ORM的方式訪問數據庫,原生支持SQLite、MySQL和PostgreSQL等數據庫。
  • pony - pony官網 Pony是一個非常酷和新的 Python ORM ,它能夠讓你使用Python generators來查詢一個數據庫。這些generators然後會轉成高效的SQL。
  • asyncmongo - AsyncMongo是基於Tornado iploop的mongo數據庫的異步庫。
  • influxdb-python - InfluxDB -python 是一個時間序列數據庫,用它來儲存不同時間的測量值。通過 RESTFul API,它變得極其易用而且高效,另外,由於其內建了聚類功能,因此對數據的檢索和分組也變得十分輕鬆。
  • elasticsearch-dsl-py - elasticsearch-dsl-py提供基於JSON的完整的Query DSL查詢表達式(DSL即領域專用語言)。
  • MongoHub-Mac - MongoHub-Mac:mongo 圖形化管理工具。
  • mongotron - mongotron:mongo 圖形化管理工具,基於Electron與AngularJS寫成。
  • asyncmongo - AsyncMongo是基於Tornado iploop的mongo數據庫的異步庫。

========

遊戲相關

========

開源框架

========

大數據相關

  • pandas - 爲 Python 編程語言提供高性能,易用數據結構和數據分析工具。在數據改動和數據預處理方面,Python 早已名聲顯赫,但是在數據分析與建模方面,Python 是個短板。Pands 軟件就填補了這個空白,能讓你用 Python 方便地進行你所有數據的處理,而不用轉而選擇更主流的專業語言,例如 R 語言。12 個使效率倍增的 Pandas 技巧 、  。
  • pulp - PuLP 是一個用 Python 編寫的線性編程模型。它能產生線性文件,能調用高度優化的求解器,GLPK,COIN CLP/CBC,CPLEX,和GUROBI,來求解這些線性問題。
  • Matplotlib - Matplotlib是基於 Python 的 2D(數據)繪圖庫,它產生(輸出)出版級質量的圖表,用於各種打印紙質的原件格式和跨平臺的交互式環境。matplotlib 既可以用在 python 腳本, python 和 ipython 的 shell 界面 (ala MATLAB® 或 Mathematica®),web 應用服務器,和6類 GUI 工具箱。matplotlib 嘗試使容易事情變得更容易,使困難事情變爲可能。你只需要少量幾行代碼,就可以生成圖表,直方圖,能量光譜(power spectra),柱狀圖,errorcharts,散點圖(scatterplots)等。
  • Scikit-Learn - Scikit-Learn是一個簡單有效地數據挖掘和數據分析工具(庫)。關於最值得一提的是,它人人可用,重複用於多種語境。它基於 NumPy,SciPy 和 mathplotlib 等構建。
  • Spark -Spark 由一個驅動程序構成,它運行用戶的 main 函數並在聚類上執行多個並行操作。Spark 最吸引人的地方在於它提供的彈性分佈數據集(RDD),那是一個按照聚類的節點進行分區的元素的集合,它可以在並行計算中使用。RDDs 可以從一個 Hadoop 文件系統中的文件(或者其他的 Hadoop支持的文件系統的文件)來創建,或者是驅動程序中其他的已經存在的標量數據集合,把它進行變換。用戶也許想要 Spark 在內存中永久保存 RDD,來通過並行操作有效地對 RDD 進行復用。最終,RDDs 無法從節點中自動復原。Spark 中第二個吸引人的地方在並行操作中變量的共享。
  • SciPy - SciPy是一個開源的Python算法庫和數學工具包,SciPy包含的模塊有最優化、線性代數、積分、插值、特殊函數、快速傅里葉變換、信號 處理和圖像處理、常微分方程求解和其他科學與工程中常用的計算。其功能與軟件MATLAB、Scilab和GNU Octave類似。Numpy和Scipy常常結合着使用,Python大多數機器學習庫都依賴於這兩個模塊。
  • NumPy - NumPy幾乎是一個無法迴避的科學計算工具包,最常用的也許是它的N維數組對象,其他還包括一些成熟的函數庫,用於整合C/C++和 Fortran代碼的工具包,線性代數、傅里葉變換和隨機數生成函數等。NumPy提供了兩種基本的對象:ndarray(N-dimensional array object)和 ufunc(universal function object)。ndarray是存儲單一數據類型的多維數組,而ufunc則是能夠對數組進行處理的函數。
  • ipython - iPython 是一個Python 的交互式Shell,比默認的Python Shell 好用得多,功能也更強大。 她支持語法高亮、自動完成、代碼調試、對象自省,支持 Bash Shell命令,內置了許多很有用的功能和函式等,非常容易使用。默認開啓了matploblib的繪圖交互,用起來很方便。jupyter-notebook - jupyter官網
  • PyML - PyML是一個Python機器學習工具包,爲各分類和迴歸方法提供靈活的架構。它主要提供特徵選擇、模型選擇、組合分類器、分類評估等功能。
  • gensim - gensim是一種NLP(自然語言處理),它提供了一些常用算法,例如 tf-idf、word2vec、doc2vec、LSA 等的快速、可拓展(內存無關)實現,同時還提供了簡單易用的接口和完善的文檔。
  • Blaze - Blaze 是下一代的 NumPy。用於處理分佈式的各種不同數據源的計算。
  • Dask - Dask是一款基於外存的Python 調度工具。它通過將數據集分塊處理並根據所擁有的核數分配計算量,這有助於進行大數據並行計算。它主要針對單機的並行計算進程。
  • GWPY - GWPY一個可以分析引力波數據的Python包。

========

網絡爬蟲

========

測試

  • splinter - Python自動化測試工具Splinter,不僅可以當web自動化測試工具 同時也可以當抓取交互式網站的爬蟲程序來用的,不用去分析ajax請求數據了,可以模擬登錄,用Python開發自動化測試腳本-splinter
  • swarm - 是一個簡單的使用 gevent 開發的支持自定義協議的長連接壓測框架。
  • PySonar2 - PySonar2王垠開發的,針對 Python 的代碼靜態分析工具。
  • Behave - BDD自動化測試框架。
  • Nose - Nose是最流行的針對Python的測試庫之一。簡單實例

========

破解腳本

  • ibrute - 一個攻擊iCloud賬戶的Python腳本,2014年很多明星的賬號就是被這個腳本攻破的,蘋果已經修改這個漏洞了。
  • bruteforce_py - 暴力破解腳本,ssh bf, wordpress bf, cpanel bf, mysql bf, etc … 可以說是暴力破解大全。
  • keychain-bruteforce - 暴力破解MAC OS X 的密碼管理。
  • gamblerbfe - 路由器也可以暴力破解了。
  • AndroidPINCrack - android的pin密碼破解。
  • rarPasswordCrackere - rar加密文件破解。
  • Python-ZIP-Cracker - zip加密文件破解。

========

圖表及圖像相關

  • vincent - Python 構建的專爲運用 D3.js 進行可視化的 vega 轉換工具。
  • Scikit-image - 一組用於圖像處理的算法的集合,使圖像處理任務如模糊,增強對比度,縮放只需要一些函數調用就可以完成。
  • PIL - PIL (Python Imaging Library)是 Python 中最常用的圖像處理庫。

========

運維相關

  • pywebsocketserver - 程序Log實時監控 – python + websocket。
  • pupy - Pupy是一個遠程管理工具(Administration Tool),開源並且支持多個平臺。Pupy還內置了一個Python解釋器,可以從內存中加載Python包,訪問遠程Python對象。
  • Fabric - Fabric 一個通過SSH進行應用部署以及系統任務管理的命令行工具。
  • Invoke - Invoke讓你通過一個Python庫便捷地執行系統管理任務。如果你想使用穩定的工具(即使是不再積極開發),可以考慮Invoke的前身——Fabric。
  • DeployDjango - 不到一分鐘安全部署Django應用的腳本,操作教程
  • HealthChecks - HealthChecks基於 cron 的監控服務。在 cron 裏配置好監控只需要幾分鐘時間,卻能讓你晚上睡得更好!2015年出現的十大流行Python庫 。
  • dockerizing-django - 是realpython網站一篇相關教程的代碼庫,講的是如何將Django應用Docker化。2015年出現的十大流行Python庫 。
  • 用Python腳本實現對Linux服務器的監控 - 用Python腳本實現對Linux服務器的監控。
  • plumbum控 - plumbum提供了非常易用的語法,可以輕鬆地以跨平臺的方式執行本地或者遠程命令,獲取輸出或者錯誤代碼。還可以組合它們(shell 管道的方式),而且它還提供了創建命令行應用的接口。
  • virtualenv - virtualenv用來建立一個虛擬的python環境,一個專屬於項目的python環境。用virtualenv 來保持一個乾淨的環境非常有用。
  • Gunicorn - Gunicorn 是一個Python WSGI UNIX的HTTP服務器。這是一個pre-fork worker的模型,Gunicorn服務器大致與各種Web框架兼容,只需非常簡單的執行,輕量級的資源消耗,以及相當迅速,Nginx+Gunicorn+Django 部署小記
  • mitmproxy - mitmproxy 是用 Python 和 C 開發的一箇中間人代理軟件(man-in-the-middle proxy),它可以用來攔截、修改、重放和保存 HTTP/HTTPS 請求。
  • Sentry - Sentry 是一個實時的事件日誌和聚合平臺,基於 Django 構建。Sentry 可以幫助你將 Python 程序的所有 exception 自動記錄下來,然後在一個好用的 UI 上呈現和搜索。
  • newrelic - newrelic性能監控的好工具,國內有;雲智慧ONE APM
  • ipapy - iOS項目自動打包腳本,並且上傳到fir.im,然後發送郵件給測試人員。

========

樹莓派

========

第三方平臺

  • wechat-python-sdk - wechat-python-sdk微信公衆平臺Python開發包 wechat-python-sdk.readthedocs.org/ , 非官方微信公衆平臺 Python 開發包,包括官方接口和非官方接口。
  • wechatpy - wechatpy 是一個微信 (WeChat) 公衆平臺的第三方 Python SDK, 實現了普通公衆平臺和企業號公衆平臺的解析消息、生成回覆和主動調用等 API。閱讀文檔:wechatpy.readthedocs.org/zh_CN/lates…
  • wechat-deleted-friends - wechat-deleted-friends查看被刪的微信好友。
  • wxBot - wxBot爲Python包裝的網頁微信API。可以很容易地實現微信機器人。參考文章:《挖掘微信Web版通信的全過程》、《微信協議簡單調研筆記》。
  • WeixinBot - WeixinBot微信web協議分析和實現微信機器人(微信網頁版 wx2.qq.com)。其他版本
  • WeRoBot - WeRoBot是一個面向公衆號的微信機器人框架,文檔 。
  • WxRobot - WxRobot:面向個人賬戶的微信機器人框架,文檔 。
  • Wechat django - Wechat django一個基於django開發的微信公衆平臺,整體環境搭建在新浪SAE平臺上,暫時實現的功能:查詢天氣情況、翻譯。
  • gxgk-wechat-server - gxgk-wechat-server莞香廣科微信公衆號後端,使用 Python、Flask、Redis、MySQL、Celery ,爲在校學生提供一系列信息查詢與便民服務。
  • weChat-python-sdk - weChat-python-sdk微信公共平臺非官方SDK,主要實現主動的消息推送和獲取,該項目已經過期!
  • wechat-admin - 基於Flask和MySQL能夠幫助快速遷移微信服務號後臺到自家服務器的框架(tag: Python, wechat, weixin, admin, Flask) 。

========

IDE

  • PyCharm - PyCharm是由JetBrains打造的一款Python IDE,Community社區版本是免費的,Professional版本$199.00/年。
  • Eric - Eric是一個集成了項目管理功能的 Python和Ruby集成開發環境。
  • PyDev - PyDev是Eclipse開發Python的 IDE,支持Python,Jython和IronPython的開發。
  • KomodoEdit - Komodo Edit 是非常乾淨,專業的 Python IDE。
  • PyScripter - PyScripter是一個開源的Python語言集成開發環境。
  • WingIDE - WingIDE是個相當優秀的 IDE。
  • IEP - IEP 是跨平臺的 Python IDE,旨在提供簡單高效的 Python 開發環境。包括兩個重要的組件:編輯器和 Shell,並且提供插件工具集從各個方面來提高開發人員的效率。
  • Emacs - Linux文本編輯器Emacs是一種強大的文本編輯器,在程序員和其他以技術工作爲主的計算機用戶中廣受歡迎。
  • sublimetext - sublimetext:Sublime Text 是一個輕量、簡潔、高效、跨平臺的編輯器。
  • Atom - Atom 是 Github 專門爲程序員推出的一個跨平臺文本編輯器。具有簡潔和直觀的圖形用戶界面,並有很多有趣的特點:支持CSS,HTML,JavaScript等網頁編程語言。它支持宏,自動完成分屏功能,集成了文件管理器。官網下載,比較不錯的插件:爆炸效果 activate-power-mode、程序員鼓勵師 atom-miku 。

========

其他

  • IoTNotes - 開源硬件記錄。
  • GitHub上Star最多的100個python repository - GitHub上Star最多的100個python repository。
  • 10個Python 模塊 - 你該瞭解的10個 Python 模塊。
  • dask - 【(Python)集成任務調度/阻塞算法的數據並行處理庫Dask】支持大數據集的分割多核並行處理,Doc
  • Phonenumbers - Phonenumbers 小巧,實用簡便,沒有地理代編碼,運營商,時區等metadata數據。它能識別多種格式,然後使用不同的格式/樣式進行有效匹配。
  • toyplot - Python交互繪圖庫Toyplot,文檔doc
  • pythalesians - Python金融(分析工具)庫PyThalesians。
  • 20個機器學習開源項目 - 20 個頂尖的 Python 機器學習開源項目 Scikit-learn、Pylearn2、NuPIC……
  • Seaborn - 用 Seaborn 畫出好看的分佈圖, 使用說明 。
  • Python_Coding_Rule - 【Python代碼指南】,這篇文檔改編自Guido最初的《Python風格指南》一文,希望對初學Python的朋友們有所借鑑。
  • GGTinypng - 批量壓縮png和jpg圖片python腳本,已經支持子文件夾裏面的圖片,會按原始的相對路徑存放到輸出文件夾內。
  • sinaweibopy - 新浪微博Python SDK。
  • keras - Keras是一個高度模塊化的神經網絡庫,用Python語言編寫,可以基於TensorFlow或Theano框架運行。
  • yapf - yapf是一個Python文件代碼格式化工具,但與其他類似工具採取了不同的算法。它脫胎於由 Daniel Jasper 開發的 clang-format。
  • tqdm - tqdm可以在長循環中添加一個進度提示信息,用戶只需要封裝任意的迭代器 tqdm(iterator),是一個快速、擴展性強的進度條工具庫。
  • pyvim - pyvim用Python語言實現的Vim編輯器。
  • snake - Snake用來取代Vim的VimScript進行Vim的插件編程,藉由Python的強大,讓插件編程如虎添翼。
  • pyxley - 使用Flask和React.js,快速開發數據面板(dashboard。在網頁上顯示一個數據面板是與人分享數據科學發現的最直觀方法。對R語言來說有Shiny來簡化數據科學家開發網頁的工作,而Pyxley就相當於Python版的Shiny。使用Pyxley不光不用寫HTML、CSS,你還可以加入自己的JavaScript來進行定製。
  • Tomorrow - Tomorrow爲Python 2.7中的異步代碼提供了神奇的裝飾器語法實現。
  • ibis - Ibis是Cloudera Labs推出的一個新項目,目前還是預覽版。它試圖解決的就是數據集規模的問題,但對用戶提供的確是單機上Python的體驗,而且能夠與現有的Python數據生態圈(Pandas、Scikit-learn、Numpy)進行集成。未來它還計劃加入與機器學習和高級分析集成的功能。
  • ipython - IPython 是一個在多種編程語言之間進行交互計算的命令行 shell,最開始是用 python 開發的,提供增強的內省,富媒體,擴展的 shell 語法,tab 補全,豐富的歷史等功能。
  • bpython - bpython是一個不錯的Python解釋器的界面,很像現在的IDE(集成開發環境)。
  • Ptpython - Ptpython是一個高級的python 交互式解釋器(REPL)。python-prompt-toolkit
  • DreamPie - DreamPie 是一個Python shell,爲Python開發者提供自動完成的屬性;功能和文檔顯示;並且將session歷史存儲爲HTML文件。
  • Arrow - Arrow這個庫可以更好地處理Python中的日期和時間(data/time)。
  • retrying - Retrying庫可以幫你避免重複勞動:它實現了『重試』行爲。它提供了一個通用的 decorator,而且還可以設置一系列的屬性,如最大重試次數、延時、退避休眠(backoff sleeping)和錯誤條件(error conditions)等,以此來獲得你想要的重試行爲。簡單輕便。
  • python-phonenumbers - python-phonenumbers從Google 的『libphonenumbers』庫移植而來,用來解析、格式化或者驗證電話號碼,而且需要寫的代碼非常少。最重要的是,『phonenumbers』可以判斷一個電話號碼是否是唯一的(遵照 E.164 格式)。它同時支持 Python 2 和 Python 3。
  • monkeylearn-python - monkeylearn-python通過簡單易用的 RESTFul API 提供了雲端的文本挖掘功能:比如文字中的情感、最重要的關鍵字,可以對文本進行話題檢測,還可以使用自定義的文本分類器進行其他任何處理。
  • Cookiecutter - 一個命令行實用程序,從cookiecutters(項目模板)創建的項目,比如:創建從一個Python包項目模板的Python包項目。
  • Sunburnt - Sunburnt全文搜索服務器Solr的Python接口。
  • Celery - Celery是基於Python開發的分佈式任務隊列。它支持使用任務隊列的方式在分佈的機器/進程/線程上執行任務調度。
  • Gevent - Gevent是一個基於greenlet的Python的併發框架,以微線程greenlet爲核心,使用了epoll事件監聽機制以及諸多其他優化而變得高效。
  • Greenlet - Greenlet是一個python的並行處理的一個庫。
  • Eventlet - Eventlet是一個用來處理和網絡相關的python庫函數,而且可以通過協程來實現併發。
  • Python Async IO Resources - asyncio python的異步iO操作資源, asyncio - asyncio3.4以後作爲python標準庫來使用了。
  • Twisted - Twisted是一個用python語言寫的事件驅動的網絡框架,支持很多種協議,也是一個異步機制的框架。
  • eviltransform.python - eviltransform.python解決國內GPS地圖座標偏移問題,它將政府加密過的GCJ-02座標,轉成世界通用的WGS-84座標。
  • pagure - Pagure是一個用Python編寫的新的、功能齊全的、提供 Web 服務的 Git倉庫。它類似於Github 和 Gitlab ,同時允許開源貢獻者分享彼此的資源,實現代碼和內容上的合作。官網

========

博客與播客及書籍文檔

========

他人總結

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章