51Testing软件测试论坛
标题: 只恨上天让我没有提早认识你---Python 库 [打印本页]
作者: 海上孤帆 时间: 2022-8-8 11:33
标题: 只恨上天让我没有提早认识你---Python 库
在GitHub搜Python库时发现了一个的宝藏仓库,收录了全网种类超全的Python库!
包括:Web 框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析等。
截至这个回答之前,这个仓库有129000+stars。
点赞收藏,就不用担心下次找不到这份python库了~
(顺序是按照英语字母A-Z排序)方便大家浏览查找到自己需要的库:
1.管理面板(Admin Panels )管理界面库。
2.算法和设计模式(Algorithms and Design Patterns)
3.ASGI 服务器(ASGI Servers)兼容 ASGI 的 web 服务器。
- daphne:用于 ASGI 和 ASGI-HTTP 的,支持 HTTP,HTTP2 和 WebSocket 协议的服务器。
- uvicorn:使用 uvloop 和 httptools 实现的闪电般快速的 ASGI 服务器。
4.异步编程(Asynchronous Programming)5.音频(Audio)用于操作音频及其元数据的库。
6.验证(Authentication)实现验证方案的库。
作者: 海上孤帆 时间: 2022-8-8 11:35
8.内置类的增强版实现(Built-in Classes Enhancement)一些 Python 内置类的增强版实现库。
- attrs:一个在类定义时可替换 __init__, __eq__, __repr__等方法的样板。
- bidict:高效的 Pythonic 的双向映射数据结构和相关功能。
- Box:具有高级点符号访问权限的 Python 字典。
- dataclasses:(Python 标准库) 数据类。
- DottedDict:提供一种使用点路径符号访问列表和字典的方法的库。
9.CMS内容管理系统。
10.缓存(Caching)缓存数据的库。
11.聊天工具(ChatOps Tools)聊天机器人开发相关的库。
- errbot:实现 ChatOps 的最简单最受欢迎的聊天机器人。
12.代码分析(Code Analysis)进行代码分析、解析和操作代码库的库和工具。
13.命令行界面开发(Command-line Interface Development)用于创建命令行程序的库。
作者: 海上孤帆 时间: 2022-8-8 11:37
14.命令行工具(Command-line Tools)
- 高级 CLI
- httpie:一个命令行 HTTP 客户端,cURL 的替代品,易用性更好。
- iredis:支持自动补全和高亮显示的 redis 命令行工具。
- kube-shell:K8S 命令行集成的 shell 工具。
- litecli:支持自动补全和语法高亮的 SQLite 命令行工具。
- mycli:支持自动补全和语法高亮的 MySQL 命令行客户端
- pgcli:支持自动补全和语法高亮的 Postgres 命令行工具。
- SAWS:一个加强版的 AWS 命令行。
15.兼容性(Compatibility)帮助从 Python 2 向 Python 3 迁移的库。
16.计算机视觉(Computer Vision)计算机视觉相关库。
17.并发和并行(Concurrency and Parallelism)用以进行并发和并行操作的库。
18.配置(Configuration)用来保存和解析配置的库。
19.密码学(Cryptography)20.数据分析(Data Analysis)用来进行数据分析的库。
21.数据验证(Data Validation)数据验证库。多用于表单验证。
作者: 海上孤帆 时间: 2022-8-8 11:38
22.数据可视化(Data Visualization)23.数据库(Database)Python 实现的数据库。
24.数据库驱动(Database Drivers)用来连接和操作数据库的库。
- PostgreSQL
- 其他关系型数据库
- apsw:另一个 Python SQLite 封装。
- dataset:在数据库中存储 Python 字典
- pymssql:一个简单的 Microsoft SQL Server 数据库接口。
- NoSQL 数据库
- 异步客户端
- motor:支持 MongoDB 的异步 Python 驱动程序。
25.日期和时间(Date and Time)操作日期和时间的类库。
作者: 海上孤帆 时间: 2022-8-8 11:39
26.调试工具(Debugging Tools)用来进行代码调试的库。
- 调试器
- ipdb:IPython 启用的 pdb。
- pudb:全屏,基于控制台的 Python 调试器。
- pdb++:另一种 pdb 的替代。
- wdb:一个奇异的 web 调试器,通过 WebSockets 工作。
27.深度学习(Deep Learning)28.DevOps 工具(DevOps Tools)用于 DevOps 的软件和库。
29.分布式计算(Distributed Computing)分布式计算相关的框架和库。
作者: 海上孤帆 时间: 2022-8-8 11:41
30.分发(Distribution)打包为可执行文件以便分发。
- PyInstaller:将 Python 程序转换成独立的执行文件(跨平台)。
- cx_Freeze:将python程序转换为带有一个动态链接库的可执行文件。
- dh-virtualenv:构建并将 virtualenv 虚拟环境作为一个 Debian 包来发布。
- Nuitka:将脚本、模块、包编译成可执行文件或扩展模块。
- py2app:将 Python 脚本变为独立软件包(Mac OS X)。
- py2exe:将 Python 脚本变为独立软件包(Windows)。
- pynsist:一个用来创建 Windows 安装程序的工具,可以在安装程序中打包 Python 本身。
- pyarmor:一个用于加密 python 脚本的工具,也可以将加密后的脚本绑定到固件上,或设置已加密脚本的有效期。
- shiv:一个命令行工具,可用于构建完全独立的 zip 应用(PEP 441 所描述的那种),同时包含了所有的依赖项。
31.文档(Documentation)
用以生成项目文档的库。
- pdoc:一个可以替换 Epydoc 的库,可以自动生成 Python 库的 API 文档。
- Pycco:文学编程(literate-programming)风格的文档生成器。
32.下载器(Downloader)用来进行下载的库.
- s3cmd:一个用来管理 Amazon S3 和 CloudFront 的命令行工具。
- s4cmd:超级 S3 命令行工具,性能更加强劲。
- you-get:一个 YouTube/Youku/Niconico 视频下载器,使用 Python 3 编写。
- youtube-dl:一个小巧的命令行程序,用来下载 YouTube 视频。
- akshare:为方便人使用而创建的金融数据接口库。
33.电子商务(E-commerce)用于电子商务以及支付的框架和库。
34.编辑器插件和 IDE(Editor Plugins and IDEs)
- Sublime Text
- anaconda:Anaconda 可将功能齐全的 Python 开发 IDE 转换为 Sublime Text 3。
- SublimeJEDI:一个很棒的自动补全库 Jedi 的Sublime Text 插件。
- Vim
- Visual Studio
- PTVS:Visual Studio Python 工具。
- Visual Studio Code
- Python:对 Python 有丰富支持的官方 VSCode 扩展。
- IDE
- PyCharm:JetBrains 提供的商业 Python IDE,也有免费的社区版。
- spyder: 开源 Python IDE。
35.电子邮件(Email)用来发送和解析电子邮件的库。
邮件服务器:
客户端 :
- yagmail:yagmail是一个GMAIL / SMTP客户端,旨在使其尽可能简单地发送电子邮件。
- imbox:Python IMAP 库。
其他:
36.企业级应用集成(Enterprise Application Integrations)企业级环境中用于集成的平台与工具。
- Zato:ESB, SOA, REST, APIs 以及云的 Python 整合。
37.环境管理(Environment Management)管理 Python 版本和环境的工具
38.文件(Files)文件管理和 MIME(多用途的网际邮件扩充协议)类型检测。
39.外来函数接口(Foreign Function Interface)使用外来函数接口的库。
- cffi:用来调用 C 代码的外来函数接口。
- ctypes:(Python 标准库) 用来调用 C 代码的外来函数接口。
- PyCUDA:Nvidia CUDA API 的封装。
- SWIG:简化的封装和接口生成器。
作者: 海上孤帆 时间: 2022-8-8 11:45
40.表单(Forms)进行表单操作的库。
41.函数式编程(Functional Programming)使用 Python 进行函数式编程。
42.图形用户界面(GUI Development)用来创建图形用户界面程序的库。
- curses:内建的 ncurses 封装,用来创建终端图形用户界面。
- enaml:使用类似 QML 的 Declaratic 语法来创建美观的用户界面。
- kivy:一个用来创建自然用户交互(NUI)应用程序的库,可以运行在 Windows, Linux, Mac OS X, Android 以及 iOS 平台上。
- pyglet:一个 Python 的跨平台窗口及多媒体库。
- PyQt:跨平台用户界面框架 Qt 的 Python 绑定 ,支持 Qt v4 和 Qt v5。
- PySide:跨平台用户界面框架 Qt 的 Python 绑定 ,支持 Qt v4。
- Tkinter:Tkinter 是 Python GUI 的一个事实标准库。
- Toga:一个 Python 原生的,操作系统原生的 GUI 工具包。
- urwid:一个用来创建终端 GUI 应用的库,支持组件,事件和丰富的色彩等。
- wxPython:wxPython 是 wxWidgets C++ 类库和 Python 语言混合的产物。
- PyGObject:GLib/GObject/GIO/GTK+ (GTK+3) 的 Python 绑定。
- Flexx:Flexx 是一个纯 Python 语言编写的用来创建 GUI 程序的工具集,它使用 web 技术进行界面的展示。
- Eel:用于制作简单离线 HTML/JS GUI 应用的库。
- PySimpleGUI:tkinter,Qt,WxPython 和 Remi 的封装。
- pywebview:围绕网页视图组件的轻量级跨平台的原生包装。
- DearPyGui:一个简单的可使用 GPU 加速的 Python GUI 框架。
43.GraphQL(GraphQL)GraphQL 相关库。
44.游戏开发(Game Development)超赞的游戏开发库。
- Cocos2d:cocos2d 是一个用来开发 2D 游戏, 示例和其他图形/交互应用的框架。基于 pyglet。
- Panda3D:由迪士尼开发的 3D 游戏引擎,并由卡内基梅陇娱乐技术中心负责维护。使用 C++ 编写, 针对 Python 进行了完全的封装。
- Pygame:Pygame 是一组 Python 模块,用来编写游戏。
- PyOgre:Ogre 3D 渲染引擎的 Python 绑定,可以用来开发游戏和仿真程序等任何 3D 应用。
- PyOpenGL:OpenGL 的 Python 绑定及其相关 APIs。
- PySDL2:SDL2 库的封装,基于 ctypes。
- RenPy:一个视觉小说(visual novel)引擎。
- Arcade:一个现代 Python 框架,用于制作具有引人入胜的图形与声音的游戏。
- Harfang3D:支持3D,VR 与游戏开发的 Python 框架。
45.地理位置(Geolocation)地理编码地址以及用来处理经纬度的库。
46.HTML 处理(HTML Manipulation)处理 HTML 和 XML 的库。
47.HTTP使用 HTTP 的库。
- aiohttp:基于 asyncio 的异步 HTTP 网络库。
- requests:人性化的 HTTP 请求库。
- grequests:requests 库 + gevent ,用于异步 HTTP 请求。
- httplib2:全面的 HTTP 客户端库。
- treq:类似 requests 的 Python API 构建于 Twisted HTTP 客户端之上。
- urllib3:一个具有线程安全连接池,支持文件 post,清晰友好的 HTTP 库。
- httpx:下一代 Python HTTP 客户端。
48.硬件(Hardware)用来对硬件进行编程的库。
- ino:操作 Arduino 的命令行工具。
- Pyro:Python 机器人编程库。
- PyUserInput:跨平台的,控制鼠标和键盘的模块。
- scapy:一个非常棒的操作数据包的库。
- wifi:一个 Python 库和命令行工具用来在 Linux 平台上操作 WiFi。
- Pingo:Pingo 为类似 Raspberry Pi,pcDuino, Intel Galileo 等设备提供统一的 API 用以编程。
- keyboard:在 Windows 和 Linux 上挂钩并模拟全局键盘事件。
- mouse:在 Windows 和 Linux 上挂钩并模拟全局鼠标事件。
49.图像处理(Image Processing)用来操作图像的库.
50.高性能(Implementations)让 Python 更快的库。
- Cython:优化的 Python 静态编译器。使用类型混合使 Python 编译成 C 或 C++ 模块来获得性能的极大提升。
- CLPython:用 Common Lisp 编写的 Python 编程语言的实现。
- Grumpy:编译器比解释器更强大的 cpython2.7 替代品(alpha)。
- IronPython:用 C# 编写的 Python 编程语言的实现。
- Jython:为 JVM 用 Java 编写的 Python 编程语言的实现。
- MicroPython:精简高效的 Python 编程语言实现。
- Pyjion:基于 CoreCLR 的 Python JIT。
- Numba:Python JIT (just in time) 编译器,针对科学用的 Python ,由 Cython 和 NumPy 的开发者开发。
- PeachPy:嵌入 Python 的 x86-64 汇编器。可以被用作 Python 内联的汇编器或者是独立的汇编器,用于 Windows,Linux,OS X,Native Client 或者 Go 。
- PyPy:使用 Python 实现的 Python。解释器使用黑魔法加快 Python 运行速度且不需要加入额外的类型信息。
- Pyston:使用 LLVM 和现代 JIT 技术构建的 Python 实现,目标是为了获得很好的性能。
- Stackless Python:一个强化版的 Python。
51.交互式解析器(Interactive Interpreter)交互式 Python 解析器。
52.国际化(Internationalization)用来进行国际化的库。
53.任务调度(Job Scheduler)任务调度库。
54.日志(Logging)用来生成和操作日志的库。
55.机器学习(Machine Learning)56.微软的 Windows 平台(Microsoft Windows)在 Windows 平台上进行 Python 编程。
57.杂项(Miscellaneous)不属于上面任何一个类别,但是非常有用的库。
58.自然语言处理(Natural Language Processing)用来处理人类语言的库。
59.网络可视化和 SDN(Network Virtualization)用来进行网络可视化和 SDN(软件定义网络)的工具和库。
- Mininet:一款流行的网络模拟器以及用 Python 编写的 API。
- POX:一个针对基于 Python 的软件定义网络应用(例如 OpenFlow SDN 控制器)的开源开发平台。
- Pyretic:火热的 SDN 编程语言中的一员,为网络交换机和模拟器提供强大的抽象能力。
- napalm:可跨供应商 API 来操纵网络设备。
60.动态消息(News Feed)用来创建用户活动的库。
61.ORM实现对象关系映射或数据映射技术的库。
62.包管理(Package Management)管理包和依赖的工具。
63.包仓库(Package Repositories)本地 PyPI 仓库服务和代理。
64.渗透测试(Penetration Testing)渗透测试相关框架和工具。
65.权限(Permissions)允许或拒绝用户访问数据或功能的库。
66.进程(Processes)操作系统进程启动及通信库。
67.推荐系统(Recommender Systems)用于构建推荐系统的相关库。
68.重构(Refactoring)Python 重构相关库和工具。
69.RESTful API用来开发 RESTful APIs 的库
- Django
- Flask
- Pyramid
- 与框架无关的
- falcon:一个用来建立云 API 和 web app 后端的高性能框架。
- sandman:为现存的数据库驱动系统自动创建 REST APIs 。
- restless:框架无关的 REST 框架 ,基于从 Tastypie 学到的知识。
- apistar:专为Python 3设计的智能 Web API 框架。
- fastapi:一个现代,快速,基于标准 Python 类型注解的的 web框架,可使用 Python3.6+ 版本构建 API。
- hug:一个为纯净公开的 API 打造的 Python 3 框架。
- sandman2:为数据库驱动的系统自动生成 REST API。
- vibora:快速高效且支持异步的 Web 框架,灵感来源于 Flask。
70.机器人(Robotics)机器人相关库。
71.RPC 服务器(RPC Servers)兼容 RPC 的服务器。
72.科学计算(Science)73.搜索(Search)对数据进行索引和执行搜索查询的库和软件。
74.序列化(Serialization)复杂数据类型序列化相关库。
75.Serverless 框架(Serverless Frameworks)使用 Python 开发 Serverless 模型相关的库。
- python-lambda :在 AWS Lambda 开发和部署 Python 代码的工具包。
- Zappa:在 AWS Lambda 和 API Gateway 部署 WSGI 应用的工具。
76.Shell- xonsh:一种基于 python 的跨平台,面向 unix 的 shell 语言和命令提示符。
77.特殊文本格式处理(Specific Formats Processing)一些用来解析和操作特殊文本格式的库。
78.静态站点生成器(Static Site Generator)静态站点生成器是一个软件,它把文本和模板作为输入,然后输出 HTML 文件。
- Pelican:使用 Markdown 或 ReST 来处理内容, Jinja 2 来制作主题。支持 DVCS, Disqus.。AGPL 许可。
- Cactus:为设计师设计的静态站点生成器。
- Hyde:基于 Jinja2 的静态站点生成器。
- Nikola:一个静态网站和博客生成器。
- Tinkerer:Tinkerer 是一个博客引擎/静态站点生成器,由 Sphinx 驱动。
- Lektor:一个简单易用的静态 CMS 和博客引擎。
- makesite:简单轻量的站点/博客生成器(小于 130 行代码)。
79.标记(Tagging)用来进行标记的库。
80.队列(Task Queues)处理事件以及任务队列的库。
- celery:一个异步任务队列/作业队列,基于分布式消息传递
- daramatiq:适用于Python 3的快速可靠的后台任务处理库。
- huey:小型多线程任务队列。
- mrq:一个 Python 的分布式 worker 任务队列, 使用 Redis 和 gevent。
- rq:简单的 Python 作业队列。
- simpleq:一个简单的,可无限扩张的,基于亚马逊 SQS 的队列。
81.模板引擎(Template Engine)模板生成和词法解析的库和工具。
- Jinja2:一个现代的,对设计师友好的模板引擎。
- Chameleon:一个 HTML/XML 模板引擎。 模仿了 ZPT(Zope Page Templates), 进行了速度上的优化。
- Genshi:Python 模板工具,用以生成 web 感知的结果。
- Mako:Python 平台的超高速轻量级模板。
82.测试(Testing)进行代码库测试和生成测试数据的库。
- 对象工厂
- factoryboy:一个 Python 用的测试固件 (test fixtures) 替代库。
- mixer:另外一个测试固件 (test fixtures) 替代库,支持 Django, Flask, SQLAlchemy, Peewee 等。
- modelmommy:为 Django 测试创建随机固件。
- 代码覆盖率
83.文本处理(Text Processing)用于解析和操作文本的库。
84.第三方 API(Third-party APIs)85.URL 处理(URL Manipulation)解析 URLs 的库
- furl:一个让处理 URL 更简单小型 Python 库。
- purl:一个简单的,不可变的 URL 类,具有简洁的 API 来进行询问和处理。
- pyshorteners:一个纯 Python URL 缩短库。
- shorturl:生成短小 URL 和类似 bit.ly 短链的 Python 实现。
- webargs:一个解析 HTTP 请求参数的库,内置对流行 web 框架的支持,包括 Flask, Django, Bottle, Tornado 和 Pyramid。
86.视频(Video)用来操作视频和 GIF 的库。
87.Web 资源管理(Web Asset Management)管理、压缩、缩小网站资源的工具。
88.网页内容提取(Web Content Extracting)用于进行网页内容提取的库。
89.网络爬取(Web Crawling)自动化web抓取的库。
90.Web 框架(Web Frameworks)全栈 Web 框架。
91.WebSocketWeb socket 相关库。
92.WSGI 服务器(WSGI Servers)兼容 WSGI 的 web 服务器
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) |
Powered by Discuz! X3.2 |