diff --git a/README.md b/README.md index 994d19f..33f9529 100755 --- a/README.md +++ b/README.md @@ -1,21 +1,17 @@ -人脸测试的一些小脚本和教程。 -- [python测试开发练习](https://github.com/china-testing/python-testing-examples) +逐步迁移到新仓库: [python_cn_resouce](https://github.com/china-testing/python_cn_resouce) -bazi/bazi.py:使用python排八字 [文档地址](https://china-testing.github.io/bazi.html) - -flask/api_demo: 使用python3和flask构建RESTful API(接口测试服务) 的源码 [文档地址](http://t.cn/RQzD0uY) - -book_scraper:一些爬取书籍的脚本。如果你知道有更好的免费书籍下载站点或下载脚本,请联系xurongzhong#126.com,谢谢 [文档地址](http://t.cn/RQzD0uY) - -book_scraper/requests_allitbooks.py 根据搜索词下载allitbooks的书籍,[文档](http://blog.sciencenet.cn/blog-2604609-1104696.html) - -wingide6 破解:other/wingide6_python3_crack.py +python测试开发钉钉群:21745728,目前800多人,另有几千人的python测试开发微信群,可联系 钉钉或微信号 pythontesting 加群(备注:python)! * [国学 中医 历史等社科类书籍下载](https://github.com/china-testing/python-api-tesing/blob/master/society_books.md) * [电影 视频 下载](https://github.com/china-testing/python-api-tesing/blob/master/videos.md) * [IT类书籍 下载](https://github.com/china-testing/python-api-tesing/blob/master/books.md) + + + * [python八字排盘库](https://github.com/china-testing/bazi) + * 技术支持:看八字风水请联系钉钉、抖音或微信pythontesting + * 另有飞书、微信、钉钉、抖音等提供大量免费电子书共享。 八字培训等 tools目录: @@ -41,12 +37,6 @@ tools目录: * split_raw.py 切分raw图为ir,depth图 -* 今日头条极速版看新闻可以赚钱,邀请码DBG78MUK 或 DBG8ADUK 抖音极速版:889494501 火山极速版:277335131 - -* 技术支持qq群: 144081101(后期会录制视频存在该群群文件) 591302926 567351477 钉钉免费群:21745728 - -* 道家技术-手相手诊看相中医等钉钉群21734177 qq群:391441566 184175668 338228106 看手相、面相、舌相、抽签、体质识别。服务费50元每人次起。请联系钉钉或者微信pythontesting - Table of Contents ================= @@ -59,6 +49,7 @@ Table of Contents * [Windows UI测试自动化](#windows-ui测试自动化) * [UI测试](#ui测试) * [性能测试](#性能测试) + * [渗透测试](#渗透测试) * [跨语言调用](#跨语言调用) * [测试框架](#测试框架) * [Mock](#mock) @@ -107,6 +98,7 @@ Table of Contents * [表单(Forms)](#表单forms) * [函数式编程(Functional Programming)](#函数式编程functional-programming) * [图形用户界面(GUI)](#图形用户界面gui) + * [Game Development](#game-development) * [游戏开发(Game Development)](#游戏开发game-development) * [地理位置(Geolocation)](#地理位置geolocation) * [HTML操作(HTML Manipulation)](#html操作html-manipulation) @@ -132,6 +124,7 @@ Table of Contents * [其他](#其他) * [包管理(Package Management)](#包管理package-management) * [包仓库](#包仓库) + * [重构(Refactoring)](#重构Refactoring) * [RESTful API](#restful-api) * [RPC服务器(RPC Servers)](#rpc服务器rpc-servers) * [科学(Science)](#科学science) @@ -184,15 +177,15 @@ https://github.com/atinfo/awesome-test-automation https://westurner.github.io/wiki/awesome-python-testing -交流QQ群:python 测试开发自动化测试 144081101 Python数据分析pandas Excel 630011153 中医草药自学自救大数据 391441566 南方中医草药鉴别学习 184175668 中医草药湿热湿疹胃病 291184506 python高级人工智能视觉 6089740 - -wechat: pythontesting # 测试开发 ## Web UI测试自动化 + * [PyAutoGUI](https://github.com/asweigart/pyautogui) - 跨平台GUI自动化Python模块。 + + * [Schemathesis](https://github.com/kiwicom/schemathesis) - 用Open API / Swagger规范构建的Web应用程序进行基于属性的自动测试的工具。 * splinter - web UI测试工具,基于selnium封装。 [链接](https://github.com/cobrateam/splinter) @@ -237,7 +230,9 @@ wechat: pythontesting * pywinauto - Windows UI自动化。 [链接](https://github.com/pywinauto/pywinauto/) - * SikuliX - 基于OpenCV的GUI测试框架,使用图像识别来定位与之间的项目,来自python 2.7的脚本,跨平台。[链接](https://github.com/RaiMan/SikuliX-2014) + * SikuliX - sikuli的稳定长期更新版本。[链接](https://github.com/RaiMan/SikuliX1) + + * Python-UIAutomation-for-Windows - uiautomation封装了微软UIAutomation API,支持自动化Win32,MFC,WPF,Modern UI(Metro UI), Qt, IE, Firefox等。[链接](https://github.com/yinkaisheng/Python-UIAutomation-for-Windows) 国产 ## UI测试 @@ -274,7 +269,12 @@ autopy、WATSUP、winGuiAuto因为较长时间未更新未收录 * boom - 类似ab(ApacheBench)的性能测试工具。 [链接](https://github.com/tarekziade/boom) +## 渗透测试 +* [fsociety](https://github.com/Manisso/fsociety) - 一个渗透测试框架。 +* [setoolkit](https://github.com/trustedsec/social-engineer-toolkit) - 用于社会工程的工具箱。 +* [sqlmap](https://github.com/sqlmapproject/sqlmap) - 自动SQL注入和数据库接管的工具。 + ## 跨语言调用 * [python库介绍-jpype:python到java桥](https://china-testing.github.io/python3_lib_jpype1.html) @@ -421,6 +421,7 @@ radar 因为github星级太少而未收录 最近版本参见原文:https://gi * django-xadmin - 方便的Django admin替代。 完全支持插件扩展,基于 Twitter Bootstrap,并有站内书签、支持 xls, csv, xml和json数据导入等不少增强。 [链接](https://github.com/sshwsfc/xadmin) + * [jet-bridge](https://github.com/jet-admin/jet-bridge) - 管理面板框架,适用于任何具有良好用户界面的应用程序(例如Jet Django) * flask-admin - Flask的简单和可扩展的 web 管理界面框架。 [链接](https://github.com/flask-admin/flask-admin) @@ -617,40 +618,50 @@ django-viewlet因为github星级太少而未收录 ## 代码分析和lint(Code Analysis) - * coala:语言独立和易于扩展的代码分析应用程序。[coala](https://github.com/coala/coala/) - - * code2flow:把你的 Python 和 JavaScript 代码转换为流程图。暂时无法继续维护。[链接](https://github.com/scottrogowski/code2flow) + * 代码分析 - * pycallgraph:这个库可以把你的Python 应用的流程(调用图)进行可视化。[链接](https://github.com/gak/pycallgraph) - - * Flake8:模块化源码检查工具: pep8, pyflakes 以及 co。[链接](https://gitlab.com/pycqa/flake8) + * coala:语言独立和易于扩展的代码分析应用程序。[coala](https://github.com/coala/coala/) + * code2flow:把你的 Python 和 JavaScript 代码转换为流程图。暂时无法继续维护。[链接](https://github.com/scottrogowski/code2flow) + * prospector - 分析Python代码并输出有关错误,潜在问题,违反常规和复杂性的信息的工具。[prospector](https://github.com/PyCQA/prospector) + * pycallgraph:这个库可以把你的Python 应用的流程(调用图)进行可视化。[链接](https://github.com/gak/pycallgraph) + * [vulture](https://github.com/jendrikseipp/vulture) - 死代码分析. + * [gprof2dot](https://github.com/jrfonseca/gprof2dot) - 转换profiling为图形. + * [objgraph](https://github.com/mgedmin/objgraph) - python对象图. + * [mccabe](https://github.com/pycqa/mccabe) - McCabe复杂度检查. -* [black](https://github.com/ambv/black) - The uncompromising Python code formatter. - - * Pylint:一个完全可定制的源码分析器。[链接](https://github.com/PyCQA/pylint) - - * pylama:python代码审计。[链接](https://github.com/klen/pylama) - - * YAPF: Google的Python代码格式化工具。[链接](https://github.com/google/yapf) --推荐 - - * pylama:Python 和 JavaScript 的代码审查工具。[链接](https://github.com/klen/pylama/blob/develop/docs/index.rst) - - * autopep8:自动格式化 Python 代码,以使其符合 PEP8 规范。[链接](https://github.com/hhatto/autopep8) --推荐 - - * mypy :静态类型检查。[链接](https://github.com/python/mypy) --推荐 - - * pytype :google的静态类型检查工具,不依赖注解。[链接](https://github.com/google/pytype) --推荐 - - * pep8 :python风格检查。[链接](https://github.com/PyCQA/pycodestyle) --推荐 - - * prospector - 分析Python代码并输出有关错误,潜在问题,违反常规和复杂性的信息的工具。[prospector](https://github.com/PyCQA/prospector) + * 代码Linters + + * Flake8:模块化源码检查工具: pycodestyle, pyflakes 以及 McCabe的封装。[链接](https://gitlab.com/pycqa/flake8) + * [awesome-flake8-extensions](https://github.com/DmytroLitvinov/awesome-flake8-extensions) + * pylama:python和JavaScript代码审计。[链接](https://github.com/klen/pylama) + * Pylint:完全可定制的源码分析器。[链接](https://github.com/PyCQA/pylint) + * [wemake-python-styleguide](https://github.com/wemake-services/wemake-python-styleguide) - 有史以来最严格和最有主见的Python linter. + + * 代码格式化 + * pep8 :python风格检查。[链接](https://github.com/PyCQA/pycodestyle) --推荐 + * autopep8:自动格式化 Python 代码,以使其符合 PEP8 规范。[链接](https://github.com/hhatto/autopep8) --推荐 + * [black](https://github.com/python/black) - 不折不扣的Python代码格式化器。 + * [isort](https://github.com/timothycrosley/isort) - 对import进行排序的Python工具/库。 + * [yapf](https://github.com/google/yapf) - 来自Google的Python代码格式化器。 + + * 静态类型检查 [awesome-python-typing](https://github.com/typeddjango/awesome-python-typing) + + * mypy :静态类型检查。[链接](https://github.com/python/mypy) --推荐 + * [pyre-check](https://github.com/facebook/pyre-check) - 执行类型检查 + * [typeshed](https://github.com/python/typeshed) - 类型注释。 + + * 静态类型注释生成器 + * [MonkeyType](https://github.com/Instagram/MonkeyType) - 通过收集运行时类型生成静态类型注释。 + * [pytype](https://github.com/google/pytype) - Pytype检查和推断Python代码的类型 - 不需要类型注释。 - * [pyre-check](https://github.com/facebook/pyre-check) - Performant type checking. + ## 命令行工具(Command-line Tools) ### 命令行程序开发( Command-line Application Development) + * [alive-progress](https://github.com/rsalmei/alive-progress) - 一种新的进度条,具有实时吞吐量、等值和非常酷的动画效果。 + * asciimatics:跨平台,全屏终端包(即鼠标/键盘输入和彩色,定位文本输出),完整的复杂动画和特殊效果的高级API。[链接](https://github.com/peterbrittain/asciimatics) * cement:Python 的命令行程序框架。[链接](https://github.com/datafolklabs/cement/) @@ -659,9 +670,9 @@ django-viewlet因为github星级太少而未收录 * cliff:一个用于创建命令行程序的框架,可以创建具有多层命令的命令行程序。[链接](https://git.openstack.org/cgit/openstack/cliff) - * clint:Python 命令行程序工具。[链接](https://github.com/kennethreitz/clint) - * colorama:跨平台彩色终端文本。[链接](https://github.com/tartley/colorama) + + * [tqdm](https://github.com/tqdm/tqdm) - 用于循环和CLI的快速、可扩展的进度条。 * docopt:Python 风格的命令行参数解析器。[链接](https://github.com/docopt/docopt) --推荐 @@ -680,6 +691,8 @@ django-viewlet因为github星级太少而未收录 * bashplotlib:在终端中进行基本绘图。[链接](https://github.com/glamp/bashplotlib) * caniusepython3:判断是哪个项目妨碍你你移植到 Python 3。[链接](https://github.com/brettcannon/caniusepython3) + + * [copyer](https://github.com/pykong/copier) - 用于渲染项目模板的库和命令行工具。 * cookiecutter:从 cookiecutters(项目模板)创建项目的一个命令行工具。[链接](https://github.com/brettcannon/caniusepython3) @@ -717,6 +730,10 @@ django-viewlet因为github星级太少而未收录 计算机视觉库。 + + * [EasyOCR](https://github.com/JaidedAI/EasyOCR) - 即用型OCR,支持40多种语言。 + * [Face Recognition](https://github.com/ageitgey/face_recognition) - 简单的面部识别库。 + * [Kornia](https://github.com/arraiyopensource/kornia/) - Kornia是用于PyTorch的可微分计算机视觉库。 * OpenCV:开源计算机视觉库。[链接](https://opencv.org/) [2018最佳人工智能图像处理工具OpenCV书籍下载](https://www.jianshu.com/p/62a32f108341) @@ -726,6 +743,8 @@ django-viewlet因为github星级太少而未收录 * pytesseract:Google Tesseract OCR 的另一包装库。[链接](https://github.com/madmaze/pytesseract) [文档](https://china-testing.github.io/python3_lib_pytesseract.html) * SimpleCV:一个用来创建计算机视觉应用的开源框架。[链接](https://github.com/sightmachine/SimpleCV) + + * [tesserocr](https://github.com/sirfz/tesserocr) - 另一个简单的、对Pillow友好的、围绕OCR的`tesseract-ocr` API的包装器。 ## 并发和并行及异步与网络(Concurrency and Parallelism) @@ -840,8 +859,6 @@ django-viewlet因为github星级太少而未收录 * matplotlib:Python 2D 绘图库。[链接](https://github.com/matplotlib/matplotlib) --推荐 * bokeh:用Python进行交互式web绘图。[链接](https://github.com/bokeh/bokeh) --推荐 [英文快速入门](http://bokeh.pydata.org/en/latest/docs/user_guide/quickstart.html) [中文快速入门](https://github.com/DonaldDai/Bokeh-CN) - - * ggplot:ggplot的 Python移植。[链接](https://github.com/yhat/ggpy) -荐 * [plotnine](https://github.com/has2k1/plotnine) - ggplot的 Python移植 -荐 @@ -868,6 +885,8 @@ django-viewlet因为github星级太少而未收录 * Altair - 用于Python的声明式统计可视化库。[链接](https://github.com/altair-viz/altair) * bqplot - Jupyter Notebook的互动绘图库。[链接](https://github.com/bloomberg/bqplot) + + * [Cartopy](https://github.com/SciTools/cartopy) - 支持matplotlib的地图学python库。 * Seaborn - 使用Matplotlib进行统计数据可视化。[链接](https://github.com/mwaskom/seaborn) -荐 @@ -923,7 +942,11 @@ Python实现的数据库。 * dataset:在数据库中存储 Python 字典 pymssql:简单的 Microsoft SQL Server 数据库接口。[链接](https://github.com/pudo/dataset) + + * [sqlite3](https://docs.python.org/3/library/sqlite3.html) - (Python标准库)SQlite接口与DB-API 2.0兼容。 + * [SuperSQLite](https://github.com/plasticityai/supersqlite) - 一个建立在[apsw](https://github.com/rogerbinns/apsw)之上的超强SQLite库。 + * cassandra-python-driver:Cassandra 的 Python 驱动。[链接](https://github.com/datastax/python-driver) * HappyBase:Apache HBase。[链接](https://github.com/wbolster/happybase) @@ -936,9 +959,9 @@ Python实现的数据库。 * redis-py:Redis 的 Python 客户端。[链接](https://github.com/andymccurdy/redis-py) -- 推荐 - * telephus:基于 Twisted 的 Cassandra 客户端。[链接](https://github.com/driftx/Telephus) - * txRedis:基于 Twisted 的 Redis 客户端。[链接](https://github.com/driftx/Telephus) + + * pymemcache:纯Python memcached 客户端。[链接](https://github.com/pinterest/pymemcache) ## 日期和时间(Date and Time) @@ -962,9 +985,8 @@ Python实现的数据库。 * when.py:提供用户友好的函数来帮助用户进行常用的日期和时间操作。[链接](https://github.com/dirn/When.py) - * when.py:人性化的datetime。[链接](https://github.com/dirn/When.py) - - + * [maya](https://github.com/timofurrer/maya):人性化的datetime。 + ## 调试工具(Debugging Tools) 代码调试的库。 @@ -990,10 +1012,18 @@ Python实现的数据库。 * flask-debugtoolbar:django-debug-toolbar 的 flask 版。[链接]() * 性能分析器 - lineprofiler:逐行性能分析。[链接]() + + * pympler:运行时内存分析工具。[链接](https://github.com/pympler/pympler) + + * lineprofiler:逐行性能分析。[链接](https://github.com/rkern/line_profiler) - * Memory Profiler:监控 Python 代码的内存使用。官网、内存 - profiling:一个交互式 Python 性能分析工具。[链接]() + * Memory Profiler:监控 Python 代码的内存使用。官网、内存 [链接](https://github.com/fabianp/memory_profiler) + + * [py-spy](https://github.com/benfred/py-spy) - Python程序的采样分析器. Rust编写. + + * [pyflame](https://github.com/uber/pyflame) - Python的跟踪分析器 + + * [vprof](https://github.com/nvdv/vprof) - 可视化Python分析器. * 其他 pyelftools:解析和分析 ELF 文件以及 DWARF 调试信息。[链接]() @@ -1024,6 +1054,7 @@ Python实现的数据库。 * DevOps的软件和库。* * [Ansible](https://github.com/ansible/ansible) - 极其简单的IT自动化平台。 --推荐 +* [prometheus](https://github.com/prometheus/client_python) - 普罗米修斯监控平台python官方客户端。 --推荐 * [Cloud-Init](http://cloudinit.readthedocs.io/en/latest/) - 处理云实例的早期初始化的多分发包。 * [cuisine](https://github.com/sebastien/cuisine) - 为 Fabric 提供一系列高级函数。 * [Docker Compose](https://github.com/docker/compose) - 使用[Docker](https://www.docker.com/)的快速隔离开发环境。 --推荐 @@ -1065,8 +1096,6 @@ Python实现的数据库。 * awesome-sphinxdoc:[链接](https://github.com/yoloseem/awesome-sphinxdoc) - * MkDocs:对 Markdown 友好的文档生成器。[链接](https://github.com/mkdocs/mkdocs/) -- 推荐 - * pdoc:替换Epydoc 的库,可以自动生成 Python 库的 API 文档。[链接](https://github.com/BurntSushi/pdoc ) * Pycco:文学编程风格的文档生成器。[链接](https://github.com/pycco-docs/pycco) @@ -1153,8 +1182,6 @@ python-currencies因为星级较少没有收录 * imbox:人性化的Python IMAP 库[链接](https://github.com/martinrusev/imbox) - * inbox.py:人性化的Python SMTP 服务器。[链接](https://github.com/kennethreitz/inbox.py) - * inbox:具有时尚API的IMAP/SMTP同步系统。[链接](https://github.com/nylas/sync-engine) -- 推荐 * lamson:Python 风格的 SMTP 应用服务器。[链接](https://github.com/zedshaw/lamson) @@ -1186,6 +1213,8 @@ Python版本和环境管理 * virtualenv:创建独立的Python 环境。[链接](https://github.com/pypa/virtualenv/) --强烈推荐 * virtualenvwrapper:virtualenv 的扩展。[链接](https://bitbucket.org/virtualenvwrapper/virtualenvwrapper) --强烈推荐 + + * [poetry](https://github.com/sdispater/poetry) - 简化Python依赖性管理和打包 --强烈推荐 ## 文件(Files) @@ -1241,6 +1270,8 @@ Python版本和环境管理 * Toolz:一组用于迭代器,函数和字典的函数式编程工具。[链接](https://github.com/pytoolz/toolz) + * [returns](https://github.com/dry-python/returns) - 一组类型安全的单体、tranformers和组合工具 + ##动态消息 用来创建用户活动的库。 @@ -1257,19 +1288,31 @@ Python版本和环境管理 * enaml:使用类似 QML 的 Declaratic 语法来创建美观的用户界面。[链接](https://github.com/nucleic/enaml) * kivy:创建NUI应用程序的库,可以运行在 Windows, Linux, Mac OS X, Android 以及 iOS 平台上。[链接](https://github.com/kivy/kivy) -推荐 * pyglet:Python 的跨平台窗口及多媒体库。[链接](https://bitbucket.org/pyglet/) - * PyQt:跨平台用户界面框架 Qt 的 Python 绑定 ,支持 Qt v4 和 Qt v5。[链接](https://riverbankcomputing.com/software/pyqt/intro) + * PyQt:跨平台用户界面框架 Qt 的 Python 绑定 ,支持 Qt v4 和 Qt v5。[链接](https://doc.qt.io/qtforpython/) * PySide:跨平台用户界面框架 Qt 的 Python 绑定 ,支持 Qt v4。[链接](https://wiki.qt.io/PySide) * Tkinter:Python GUI 标准库。[链接](https://wiki.python.org/moin/TkInter) * [PySimpleGUI](https://github.com/PySimpleGUI/PySimpleGUI) - Wrapper for tkinter, Qt, WxPython and Remi that creates a unified, easy to understand & more Python-like interface for beginner and intermediate level custom GUIs. * Toga:Python 原生的, 操作系统原生的 GUI 工具包。[链接](https://github.com/pybee/toga) * urwid:创建终端 GUI 应用的库,支持组件,事件和丰富的色彩等。[链接](https://github.com/urwid/urwid) * wxPython:wxPython 是 wxWidgets C++ 类库和 Python 语言混合的产物。[链接](https://github.com/wxWidgets/Phoenix/) + * [DearPyGui](https://github.com/RaylockLLC/DearPyGui/) - 一个简单的GPU加速的Python GUI框架 * PyGObject:GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 绑定。[链接](https://wiki.gnome.org/Projects/PyGObject) * Flexx:纯 Python编写的用来创建 GUI 程序的工具集,它使用 web 技术进行界面的展示。[链接](https://github.com/flexxui/flexx) + + +## GraphQL -## 游戏开发(Game Development) +*用于处理GraphQL的库。 +* [graphene](https://github.com/graphql-python/graphene/) - Python的GraphQL框架。 +* [tartiflette-aiohttp](https://github.com/tartiflette/tartiflette-aiohttp/) - Tartiflette的一个基于aiohttp的包装器,通过HTTP暴露GraphQL APIs。 +* [tartiflette-asgi](https://github.com/tartiflette/tartiflette-asgi/) - Tartiflette GraphQL引擎的ASGI支持。 +* [tartiflette](https://tartiflette.io) - 适用于Python 3.6+和asyncio的SDL-first GraphQL引擎实现。 + +## 游戏开发(Game Development) + +* [Arcade](https://api.arcade.academy/en/latest/) - Arcade是一个现代Python框架,用于制作具有引人注目的图形和声音的游戏。 * [Cocos2d](https://github.com/los-cocos/cocos) - cocos2d是用于构建2D游戏,演示和其他图形/交互式应用程序的框架。它基于pyglet。 * [Panda3D](https://www.panda3d.org/) - 由迪士尼开发并由卡内基梅隆娱乐技术中心维护的3D游戏引擎。用C ++编写,完全用Python包装。 -推荐 * [Pygame](http://www.pygame.org/news.html) - Pygame是一套用于编写游戏的Python模块。 -推荐 @@ -1313,7 +1356,7 @@ Python版本和环境管理 使用 HTTP 的库。 * aiohttp:基于 asyncio 的异步 HTTP 网络库。[官网](https://github.com/aio-libs/aiohttp) * requests:人性化的 HTTP 请求库。[官网](http://docs.python-requests.org/en/latest/) --强烈推荐 -* grequests:requests 库 + gevent ,用于异步 HTTP 请求.[官网](https://github.com/kennethreitz/grequests) +* grequests:requests 库 + gevent ,用于异步 HTTP 请求.[官网](https://github.com/spyoungtech/grequests) * httplib2:全面的 HTTP 客户端库。[官网](https://github.com/jcgregorio/httplib2) * treq:类似 requests 的 Python API 构建于 Twisted HTTP 客户端之上。[官网](https://github.com/twisted/treq) * urllib3:一个具有线程安全连接池,支持文件 post,清晰友好的 HTTP 库。[官网](https://github.com/shazow/urllib3) @@ -1331,7 +1374,6 @@ Python版本和环境管理 * [scapy](https://github.com/secdev/scapy) - 出色的数据包操作库。 * [thrift-tools](https://github.com/pinterest/thrift-tools) thrift抓包工具。 * mitmproxy:HTTP和抓包库。[官网](https://github.com/mitmproxy/mitmproxy) -* [wifi](https://github.com/rockymeza/wifi) - 用于在Linux上使用WiFi的Python库和命令行工具。 * Pyro:Python 机器人编程库。[官网](http://pyrorobotics.com/) * PyUserInput:跨平台的,控制鼠标和键盘的模块。[官网](https://github.com/SavinaRoja/PyUserInput) @@ -1342,23 +1384,24 @@ Python版本和环境管理 * [pillow](http://hao.jobbole.com/pillow/):Pillow 是一个更加易用版的 [PIL](http://www.pythonware.com/products/pil/)。[官网](http://pillow.readthedocs.org/en/latest/) -推荐 - [python库介绍-图像处理工具pillow中文文档-手册(2018 5.*)](https://china-testing.github.io/python3_lib_pil.html) - + [python库介绍-图像处理工具pillow中文文档-手册(2018 5.*)](https://china-testing.github.io/python3_lib_pil.html) * hmap:图像直方图映射。[官网](https://github.com/rossgoodwin/hmap) * imgSeek:使用视觉相似性搜索一组图片集合的项目。[官网](https://sourceforge.net/projects/imgseek/) 较长时间没有更新 * nude.py:裸体检测。[官网](https://github.com/hhatto/nude.py) * pyBarcode:不借助 PIL 库在 Python 程序中生成条形码。[官网](https://pythonhosted.org/pyBarcode/) * pygram:类似 Instagram 的图像滤镜。[官网](https://github.com/ajkumar25/pygram) * python-qrcode:纯 Python 实现的二维码生成器。[官网](https://github.com/lincolnloop/python-qrcode) --推荐 +* [pywal](https://github.com/dylanaraps/pywal) - 从图像生成色彩方案的工具。 +* [pyvips](https://github.com/libvips/pyvips) - 快速的图像处理库,内存需求低。 * Quads:基于四叉树的计算机艺术。[官网](https://github.com/fogleman/Quads) * scikit-image:一个用于(科学)图像处理的 Python 库。[官网](http://scikit-image.org/) --推荐 * thumbor:小型图像服务,具有剪裁,尺寸重设和翻转功能。[官网](https://github.com/thumbor/thumbor) --推荐 * wand:[MagickWand](http://www.imagemagick.org/script/magick-wand.php)的 Python 绑定。MagickWand 是 ImageMagick 的 C API 。[官网](https://github.com/dahlia/wand) * face_recognition:简单易用的 python 人脸识别库。[官网](https://github.com/ageitgey/face_recognition) --强烈推荐 -* [pagan](https://github.com/daboth/pagan) - 基于输入字符串和散列的复古identicon(阿凡达)生成。 -* [opencv-python](https://github.com/skvark/opencv-python) 预编译的opencv-python, opencv-python-headless, opencv-contrib-python and opencv-contrib-python-headless。 --推荐 -* [imutils](https://github.com/jrosebr1/imutils) 一系列便利函数,可以使用OpenCV和Python轻松进行基本图像处理操作,如平移,旋转,调整大小,骨架化和显示Matplotlib图像。 --推荐 -* [word_cloud](https://github.com/amueller/word_cloud) 词云 +* [pagan](https://github.com/daboth/pagan) - 基于输入字符串和散列的复古identicon(阿凡达)生成。 +* [opencv-python](https://github.com/skvark/opencv-python) 预编译的opencv-python, opencv-python-headless, opencv-contrib-python and opencv-contrib-python-headless。 --推荐 +* [imutils](https://github.com/jrosebr1/imutils) 一系列便利函数,可以使用OpenCV和Python轻松进行基本图像处理操作,如平移,旋转,调整大小,骨架化和显示Matplotlib图像。 --推荐 +* [word_cloud](https://github.com/amueller/word_cloud) 词云 ## 实现(Implementations) @@ -1403,6 +1446,7 @@ Python版本和环境管理 * [gunnery](https://github.com/gunnery/gunnery) - 具有基于Web界面的分布式系统的多用途任务执行工具。 * [Joblib](http://pythonhosted.org/joblib/index.html) - 一组用Python提供轻量级流水线的工具。 * [plan](https://github.com/fengsp/plan) - 用Python编写crontab文件就像一个魅力一样。 +* [Prefect](https://github.com/PrefectHQ/prefect) - 现代工作流协调框架,使其能够轻松构建、安排和监控强大的数据管道。 * [schedule](https://github.com/dbader/schedule) - 人性化的 Python 任务调度库。 --推荐 * [Spiff](https://github.com/knipknap/SpiffWorkflow) - 以纯Python实现的强大的工作流引擎。 * [TaskFlow](https://github.com/openstack/taskflow) - 可以让你方便执行任务的 Python 库,一致并且可靠。 @@ -1413,20 +1457,26 @@ Python版本和环境管理 *用于生成和处理日志的库。* * [Eliot](https://github.com/ScatterHQ/eliot) - 复杂和分布式系统日志。 -* [logbook](https://github.com/getlogbook/logbook) - 记录Python的替代品。 +* [logbook](https://github.com/getlogbook/logbook) - Python logging的替代。 * [logging](https://docs.python.org/2/library/logging.html) - (Python标准库)Python的日志工具。 --推荐 -* [raven](https://github.com/getsentry/raven-python) - Sentry的Python客户端,用于Web应用程序的日志/错误跟踪,崩溃报告和聚合平台。 +* [loguru](https://github.com/Delgan/loguru) - 旨在为Python带来愉快的日志记录的库。 +* [sentry-python](https://github.com/getsentry/sentry-python) - Python的Sentry SDK。 +* [structlog](https://www.structlog.org/en/stable/) - 结构化的日志记录变得简单。 ## 机器学习 *机器学习库。请参阅:[awesome-machine-learning](https://github.com/josephmisiti/awesome-machine-learning#python)。* + +* [gym](https://github.com/openai/gym) - 一个开发和比较强化学习算法的工具包。 +* [H2O](https://github.com/h2oai/h2o-3) - 开源快速可扩展机器学习平台。 * [Metrics](https://github.com/benhamner/Metrics) - 机器学习评估指标。 * [NuPIC](https://github.com/numenta/nupic) - 用于智能计算的Numenta平台。 --推荐 * [scikit-learn](http://scikit-learn.org/) - 流行的机器学习Python库。 --推荐 * [Spark ML](http://spark.apache.org/docs/latest/ml-guide.html) - [Apache Spark](http://spark.apache.org/)的可扩展机器学习库。--推荐 * [vowpal_porpoise](https://github.com/josephreisinger/vowpal_porpoise) - 用于[Vowpal Wabbit]的轻量级Python包装器(https://github.com/JohnLangford/vowpal_wabbit/)。 * [xgboost](https://github.com/dmlc/xgboost) - 可扩展,可移植且分布式的渐变增强库。 --推荐 +* [MindsDB](https://github.com/mindsdb/mindsdb) - MindsDB是现有数据库的一个开源人工智能层,允许你毫不费力地使用标准查询来开发、训练和部署最先进的机器学习模型。 ## MapReduce @@ -1451,7 +1501,7 @@ Python版本和环境管理 * [Python(x,y)](http://python-xy.github.io/) - 基于Qt和Spyder的面向科学应用的Python发行版。 --推荐 * [pythonlibs](http://www.lfd.uci.edu/~gohlke/pythonlibs/) - Python扩展包的非官方Windows二进制文件。 --推荐 * [PythonNet](https://github.com/pythonnet/pythonnet) - .NET公共语言运行时(CLR)的Python集成。 -* [PyWin32](https://sourceforge.net/projects/pywin32/) - Python的Windows扩展。 --推荐 +* [PyWin32](https://github.com/mhammond/pywin32) - Python的Windows扩展。 --推荐 * [WinPython](https://winpython.github.io/) - Windows 7/8的便携式开发环境。 --推荐 ## 杂项 @@ -1494,6 +1544,7 @@ Python版本和环境管理 用于网络编程的库。 +* [uvicorn](https://github.com/encode/uvicorn) - Uvicorn是一个快如闪电的ASGI服务器实现,使用uvloop和httptools。 * asyncio:(Python 标准库) 异步 I/O, 事件循环, 协程以及任务。[官网](https://docs.python.org/3/library/asyncio.html) -推荐 * [Twisted](https://github.com/twisted/twisted):一个事件驱动的网络引擎。[官网](https://twistedmatrix.com/trac/) -推荐 * pulsar:事件驱动的并发框架。[官网](https://github.com/quantmind/pulsar) @@ -1501,7 +1552,7 @@ Python版本和环境管理 * pyzmq:ZeroMQ 消息库的 Python 封装。[官网](http://zeromq.github.io/pyzmq/) * Toapi:轻巧,简单,快速的 Flask 库,致力于为所有网站提供 API 服务。[官网](https://github.com/gaojiuli/toapi) -推荐 * txZMQ:基于 Twisted 的 ZeroMQ 消息库的 Python 封装。[官网](https://github.com/smira/txZMQ) -* [NAPALM](https://github.com/napalm-automation/napalm) - 用于操纵网络设备的跨供应商API。 +* [NAPALM](https://github.com/napalm-automation/napalm) - 用于操纵网络设备的跨供应商API。 ### 动态消息 @@ -1520,14 +1571,21 @@ Python版本和环境管理 * Django Models:Django 的一部分。[链接](https://docs.djangoproject.com/en/dev/topics/db/models/) * SQLAlchemy:Python SQL 工具以及对象关系映射工具。[链接](http://www.sqlalchemy.org/) + * [awesome-sqlalchemy](https://github.com/dahlia/awesome-sqlalchemy) + + * [dataset](https://github.com/pudo/dataset) - 在数据库中存储Python dicts - 适合SQLite、MySQL和PostgreSQL。 + + * [orator](https://github.com/sdispater/orator) - Orator ORM提供了简单而漂亮的ActiveRecord实现。 + + * [orm](https://github.com/encode/orm) - 异步ORM。 - * awesome-sqlalchemy系列 [链接](https://github.com/justquick/django-activity-stream) - - * Peewee:一个小巧,富有表达力的 ORM, 支持postgresql, mysql and sqlite。[链接]https://github.com/coleifer/peewee) + * Peewee:小巧,富有表达力的 ORM, 支持postgresql, mysql and sqlite。[链接]https://github.com/coleifer/peewee) - * PonyORM:提供面向生成器的 SQL 接口的 ORM。[链接](https://github.com/ponyorm/pony/) + * pony:提供面向生成器的 SQL 接口的 ORM。[链接](https://github.com/ponyorm/pony/) * python-sql:编写 Python 风格的 SQL 查询。[链接](http://python-sql.tryton.org/) + + * [pydal](https://github.com/web2py/pydal/) - 纯Python数据库抽象层。 ### NoSQL 数据库 @@ -1582,7 +1640,7 @@ Python版本和环境管理 -##权限(Permissions) +## 权限(Permissions) *允许或拒绝用户访问数据或功能的库。* @@ -1590,7 +1648,7 @@ Python版本和环境管理 * [django-guardian](https://github.com/django-guardian/django-guardian) - 为Django 1.2+权限管理 * [django-rules](https://github.com/dfunckt/django-rules) - 小巧但功能强大的应用程序,它为Django提供对象级权限,而不需要数据库。 -##进程(Processes) +## 进程(Processes) *用于启动和与OS进程进行通信的库。* @@ -1598,17 +1656,18 @@ Python版本和环境管理 * [sarge](http://sarge.readthedocs.io/en/latest/) - Subprocesses的另一个封装。 * [sh](https://github.com/amoffat/sh) - 一个全面的Python子程序替代品。 --推荐 -##队列(Queue) +## 队列(Queue) *用于处理事件和任务队列的库。* * [celery](http://www.celeryproject.org/) - 基于分布式消息传递的异步任务队列/作业队列。 --推荐 -* [huey](https://github.com/coleifer/huey) - 小多线程任务队列。 +* [daramatiq](https://github.com/Bogdanp/dramatiq) - Python 3的快速、可靠的后台任务处理库。 +* [huey](https://github.com/coleifer/huey) - 小任务队列。 * [mrq](https://github.com/pricingassistant/mrq) - Queue先生 - 使用Redis&gevent的Python中的分布式工作者任务队列。 * [rq](http://python-rq.org/) - 简单的Python作业队列。 --推荐 * [simpleq](https://github.com/rdegges/simpleq) - 一个简单的,无限可扩展的基于Amazon SQS的队列。 -##推荐系统(Recommender Systems) +## 推荐系统(Recommender Systems) *用于构建推荐系统的库。* @@ -1620,6 +1679,14 @@ Python版本和环境管理 * [surprise](http://surpriselib.com) - 用于构建和分析推荐系统的scikit。 * [TensorRec](https://github.com/jfkirk/tensorrec) - TensorFlow中的推荐引擎框架 +## 重构(Refactoring) + +*Python的重构工具和库*。 + + * [Bicycle Repair Man](http://bicyclerepair.sourceforge.net/) - Bicycle Repair Man,一个Python的重构工具。 + * [Bowler](https://pybowler.io/) - 现代 Python 的安全代码重构。 + * [Rope](https://github.com/python-rope/rope) - Rope是一个Python重构库。 + ## RESTful API *用于开发RESTful API的库。* @@ -1633,9 +1700,9 @@ Python版本和环境管理 * [flask-api](http://www.flaskapi.org/) - 适用于Flask的Browsable Web API。 * [flask-restful](https://github.com/flask-restful/flask-restful) - 快速构建适用于Flask的REST API。 --推荐 * [flask-restless](https://github.com/jfinkels/flask-restless) - 为使用SQLAlchemy定义的数据库模型生成RESTful API。 -*Pyramid +* Pyramid * [cornice](https://github.com/Cornices/cornice) - Pyramid的RESTful框架。 -*其他 +* 其他 * [falcon](http://falconframework.org/) - 一个用于构建云API和Web应用后端的高性能框架。 * [hug](https://github.com/timothycrosley/hug) - 一个Python3框架,用于通过HTTP干净地公开API以及带有自动文档和验证的命令行。 --推荐 * [fastapi](https://github.com/tiangolo/fastapi) - 现代的、快速的、基于标准Python类型提示的Web框架,用于用Python 3.6+构建API。 -- 强烈推荐 [中文快速入门](https://www.jianshu.com/p/4d8120af7c4c) https://www.jianshu.com/p/4d8120af7c4c @@ -1676,7 +1743,7 @@ Python版本和环境管理 * [statsmodels](https://github.com/statsmodels/statsmodels) - Python中的统计建模和计量经济学。 --推荐 * [SymPy](https://github.com/sympy/sympy) - 符号数学的Python库。 * [Zipline](https://github.com/quantopian/zipline) - Pythonic算法交易库。 --推荐 -* [SimPy](https://bitbucket.org/simpy/simpy) - 基于流程的离散事件仿真框架。 --推荐 +* [SimPy](https://gitlab.com/team-simpy/simpy) - 基于流程的离散事件仿真框架。 --推荐 ## 搜索 @@ -1700,6 +1767,8 @@ Python版本和环境管理 * [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) - A Python wrapper around [RapidJSON](https://github.com/Tencent/rapidjson). +* [ultrajson](https://github.com/esnme/ultrajson) - 用C语言编写的快速JSON解码器和编码器。 + ## 无服务器框架(Serverless Frameworks @@ -1714,7 +1783,7 @@ Python版本和环境管理 ### 通用 - * tablib:处理 XLS, CSV, JSON, YAML表格数据的模块。[链接](https://github.com/kennethreitz/tablib) + * tablib:处理 XLS, CSV, JSON, YAML表格数据的模块。[链接](https://github.com/jazzband/tablib) ### Office @@ -1776,12 +1845,11 @@ Archive ## 静态网站生成器(Static Site Generator) -* [Cactus(https://github.com/eudicots/Cactus) - 为设计师设计的静态网站生成器。 -* [Hyde](http://hyde.github.io/) - 基于Jinja2的静态网站生成器。 +* MkDocs:对 Markdown 友好的文档生成器。[链接](https://github.com/mkdocs/mkdocs/) -- 推荐 +* [makesite](https://github.com/sunainapai/makesite) - 简单、轻量级、无魔法的静态网站/博客生成器(< 130行)。 * [Lektor](https://www.getlektor.com/) - 易于使用的静态CMS和博客引擎。 * [Nikola](https://www.getnikola.com/) - 静态网站和博客生成器。 * [Pelican](https://blog.getpelican.com/) - 将Markdown或ReST用于内容,Jinja 2用于主题。 支持DVCS,Disqus。AGPL。 --强烈推荐 -* [Tinkerer](http://tinkerer.me/) - 博客引擎和静态网站生成器,由Sphinx提供支持。 ## 标签(Tagging) @@ -1942,6 +2010,8 @@ Archive * python-goose:HTML内容/文章提取器。[链接](https://github.com/grangier/python-goose) * python-readability:arc90的易读性工具的移植。[链接](https://github.com/buriy/python-readability) + + * [request-html](https://github.com/psf/requests-html) - Pythonic HTML解析。 * sumy:一个为文本文件和 HTML 页面进行自动摘要的模块。[链接](https://github.com/miso-belica/sumy) @@ -1980,8 +2050,11 @@ Archive 全栈 Web 框架。 * Django:Python 界最流行的 web 框架。[链接](https://github.com/django/django) wesome-django系列 [awesome-django](https://github.com/wsvincent/awesome-django) --强烈推荐 + * [awesome-django](https://github.com/shahraizali/awesome-django) + * [awesome-django](https://github.com/wsvincent/awesome-django) * Flask:Python 微型框架。[链接](https://github.com/pallets/flask) awesome-flask系列 [链接](https://github.com/humiaozuzu/awesome-flask) --强烈推荐 python web框架第一名 + * [awesome-flask](https://github.com/humiaozuzu/awesome-flask) * pyramid:一个小巧,快速,接地气的开源Python web 框架。[链接](https://github.com/Pylons/pyramid/) awesome-pyramid系列 [链接](https://github.com/uralbash/awesome-pyramid) @@ -1997,6 +2070,8 @@ Archive * TurboGears:易于扩展的全栈微框架。[链接](https://github.com/TurboGears/tg2) * web2py:全栈 web 框架和平台,用于安全数据库访问的web用。[链接](https://github.com/web2py/web2py) + + * [Masonite](https://github.com/MasoniteFramework/masonite) - 现代和以开发者为中心的Python网络框架。 * Tornado - web 框架和异步网络库. [链接](https://github.com/tornadoweb/tornado/blob/master/docs/index.rst) @@ -2077,12 +2152,15 @@ Where to discover new Python libraries. * [Django Packages](https://djangopackages.org/) * [Full Stack Python](https://www.fullstackpython.com/) * [Python Cheatsheet](https://www.pythoncheatsheet.org/) -* [Python Hackers](http://www.oss.io/open-source/) +* [Real Python](https://realpython.com) +* [The Hitchhiker’s Guide to Python](https://docs.python-guide.org/) +* [Ultimate Python study guide](https://github.com/huangsam/ultimate-python) * [Python ZEEF](https://python.zeef.com/alan.richmond) * [Python 开发社区](https://www.ctolib.com/python/) * [Real Python](https://realpython.com) * [Trending Python repositories on GitHub today](https://github.com/trending?l=python) * [Сообщество Python Программистов](https://python-scripts.com/) +* [Pythonic News](https://news.python.sc/) ## Weekly @@ -2095,10 +2173,6 @@ Where to discover new Python libraries. ### 持续更新 -[接口自动化性能测试线上培训大纲](https://china-testing.github.io/testing_training.html) - -交流QQ群:python 测试开发自动化测试 144081101 python高级人工智能视觉 6089740 - wechat: pythontesting ## Websites diff --git a/practices/pillow/rotate.py b/practices/pillow/rotate.py index 59e0e4e..fecf09d 100644 --- a/practices/pillow/rotate.py +++ b/practices/pillow/rotate.py @@ -2,11 +2,10 @@ # -*- coding: utf-8 -*- # https://china-testing.github.io/pil1.html # https://github.com/china-testing/python-api-tesing/blob/master/practices/pillow/rotate.py -# 项目实战讨论QQ群630011153 144081101 # CreateDate: 2018-12-26 from PIL import Image -im = Image.open("qun.jpg") +im = Image.open("../../python3_libraries/pillow/demo.jpg") print(im.size) im.show() diff --git a/python3_libraries/pillow/demo.jpg b/python3_libraries/pillow/demo.jpg index 1548750..fb5b602 100755 Binary files a/python3_libraries/pillow/demo.jpg and b/python3_libraries/pillow/demo.jpg differ diff --git a/python3_libraries/pillow/demo.png b/python3_libraries/pillow/demo.png index db54998..2ba5165 100755 Binary files a/python3_libraries/pillow/demo.png and b/python3_libraries/pillow/demo.png differ