收藏合集380个python常用库(包含:爬虫图文音视频机器学习PDFOffice等等)

Posted wwwarewow

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了收藏合集380个python常用库(包含:爬虫图文音视频机器学习PDFOffice等等)相关的知识,希望对你有一定的参考价值。

一、算法设计

    Python 的数据结构,算法和设计模式的实现。另请参阅真棒算法

  • 演算法

  • 设计模式

    • PyPattyrn- 一个简单但有效的库,用于实现常见的设计模式。
    • python-patterns -Python 中设计模式的集合。
    • transitions - 一种轻量级的,面向对象的有限状态机实现。

二、声音、视频、图像、文字处理

    用于处理音频及其元数据的库。

  • 声音的库

    • audioread- 跨库(GStreamer + 核心音频 + MAD + FFmpeg)音频解码。
    • dejavu- 音频指纹识别。
    • kapre - Keras 音频预处理器
    • librosa- 用于音频和音乐分析的 Python 库
    • matchering - 一个用于自动参考音频制作的库。
    • mingus- 带有 MIDI 文件和播放支持的高级音乐理论和乐谱包。
    • pyAudioAnalysis- 音频特征提取,分类,分段和应用。
    • pydub- 使用简单易用的高级界面处理音频。
    • TimeSide- 开放的 Web 音频处理框架。
  • Metadata

    • beets- 音乐库管理器和 MusicBrainz 标记器。
    • eyeD3- 一种用于处理音频文件的工具,特别是包含 ID3 元数据的 MP3 文件。
    • mutagen- 处理音频元数据的 Python 模块。
    • tinytag- 用于读取 MP3,OGG,FLAC 和 Wave 文件的音乐元数据的库。
  • 视频和 GIF 的库。

    • moviepy- 用于基于脚本的电影编辑的模块,具有多种格式,包括动画 GIF。
    • scikit-video -SciPy 的视频处理例程。
    • vidgear- 最强大的多线程视频处理框架。
  • 用于处理图像的库

    • hmap- 图像直方图重新映射。
    • imgSeek- 使用视觉相似性搜索图像集合的项目。
    • nude.py- 裸露检测。
    • pagan - 复古 identicon(阿凡达)根据输入的字符串和哈希生成。
    • pillow- 枕头是友好的 PIL 叉。
    • python- barcode - 在 Python 中创建条形码,没有任何额外的依赖关系。
    • pygram- 类似 Instagram 的图像过滤器。
    • PyMatting -Alpha 遮罩的库。
    • python-qrcode- 一个纯 Python QR Code 生成器。
    • pywal- 一种从图像生成配色方案的工具。
    • pyvips- 具有低内存需求的快速图像处理库。
    • Quads - 基于四叉树的计算机艺术。
    • scikit-image- 用于(科学)图像处理的 Python 库。
    • thumbor- 智能影像服务。它可以按需裁剪,调整图像大小和翻转图像。
    • wand - MagickWand 的 Python 绑定,ImageMagick 的 C API。
  • 用于解析和处理纯文本的库

 三、日期和时间

    用于处理日期和时间的库。

  • Arrow- 一个 Python 库,提供了一种明智且人性化的方法来创建,操作,格式化和转换日期,时间和时间戳
  • Chronyk- 一个 Python 3 库,用于解析人类编写的时间和日期。
  • dateutil- 标准 Python datetime 模块的扩展。
  • delorean- 一个库,用于清除与日期时间有关的不便的事实。
  • maya- 人类的日期时间。
  • moment - 一个 Python 库用于处理日期 / 时间。受到 Moment.js 的启发。
  • Pendulum-Python 日期时间变得容易。
  • PyTime- 一个易于使用的 Python 模块,旨在按字符串操作日期 / 时间 / 日期时间。
  • pytz- 世界时区定义,现代和历史。将 tz 数据库带入 Python。
  • when.py- 提供用户友好的功能来帮助执行常见的日期和时间操作。

四、爬虫

  • 自动执行 Web 抓取。

  • 用于提取 Web 内容的库。

    • html2text- 将 html 转换为 Markdown 格式的文本。
    • lassie- 人类的 Web 内容检索。
    • micawber- 一个小型库,用于从 URL 中提取丰富的内容。
    • newspaper -Python 中的新闻提取,文章提取和内容管理。
    • python- readability - arc90 的可读性工具的快速 Python 端口。
    • requests-html –适用于人类的 Pythonic HTML 解析。
    • sumy- 自动汇总文本文档和 HTML 页面的模块。
    • textract- 从任何文档,Word,PowerPoint,PDF 等中提取文本
    • toapi- 每个网站都提供 API。

五、HTML、XML

    用于处理 HTML 和 XML 的库。

  • BeautifulSoup- 提供 Pythonic 惯用法来迭代,搜索和修改 HTML 或 XML。
  • bleach –基于白名单 HTML 清理和文本 linkification 库中的。
  • cssutils- 一个 Python 的 CSS 库。
  • html5lib- 一个符合标准的库,用于解析和序列化 HTML 文档和片段。
  • lxml- 一个非常快速,易于使用的通用库,用于处理 HTML 和 XML。
  • MarkupSafe- 为 Python 实现 XML / HTML / XHTML 标记安全字符串。
  • pyquery- 用于解析 HTML 的类似 jQuery 的库。
  • untangle –将 XML 文档转换为 Python 对象,以方便访问。
  • WeasyPrint- 用于 HTML 和 CSS 的可视渲染引擎,可以导出为 PDF。
  • xmldataset- 简单的 XML 解析。
  • xmltodict- 使用 XML 就像使用 JSON。

六、HTTP 客户端

    使用 HTTP 的库。

  • grequests- 异步 HTTP 请求的 request + gevent。
  • httplib2- 全面的 HTTP 客户端库。
  • httpx- 用于 Python 的下一代 HTTP 客户端。
  • requests -HTTP 对人类的请求。
  • treq -Python 请求,例如在 Twisted 的 HTTP 客户端之上构建的 API。

七、office 模块

    用于解析和处理特定文本格式的库。

  • General

    • tablib -XLS,CSV,JSON,YAML 中的表格数据集的模块。
  • Office

    • docxtpl- 通过 jinja2 模板编辑 docx 文档
    • openpyxl- 用于读取和写入 Excel 2010 xlsx /xlsm/xltx /xltm 文件的库。
    • pyexcel- 提供一个用于读取,操作和写入 csv,ods,xls,xlsx 和 xlsm 文件的 API。
    • python-docx- 读取,查询和修改 Microsoft Word 2007/2008 docx 文件。
    • python-pptx- 用于创建和更新 PowerPoint(.pptx)文件的 Python 库。
    • unoconv- 在 LibreOffice / OpenOffice 支持的任何文档格式之间转换。
    • XlsxWriter- 一个用于创建 Excel .xlsx 文件的 Python 模块。
    • xlwings -BSD 许可的库,可以轻松地从 Excel 调用 Python,反之亦然。
    • xlwt / xlrd- 从 Excel 文件写入和读取数据以及格式化信息。
  • PDF 格式

    • PDFMiner- 一种从 PDF 文档提取信息的工具。
    • PyPDF2- 一个能够拆分,合并和转换 PDF 页面的库。
    • ReportLab- 允许快速创建丰富的 PDF 文档。
  • Markdown

  • YAML

    • PyYAML- 适用于 Python 的 YAML 实现。
  • CSV

    • csvkit- 转换为 CSV 并使用 CSV 的实用程序。
  • Archive

    • unp- 一个命令行工具,可以轻松地解压缩档案。

八、序列化

用于序列化复杂数据类型的库

九、代码分析、测试

码质量检查器的工具。另请参阅令人敬畏的静态分析

  • 代码分析

    • Coala- 语言独立且易于扩展的代码分析应用程序。
    • code2flow- 将您的 Python 和 javascript 代码转换为 DOT 流程图。
    • prospector- 分析 Python 代码的工具。
    • pycallgraph- 一个可视化 Python 应用程序流程(调用图)的库。
    • vulture- 查找和分析无效的 Python 代码的工具。
  • Code Linters

  • 代码格式化程序

    • black –毫不妥协的 Python 代码格式化程序。
    • isort- 用于对导入进行排序的 Python 实用程序 / 库。
    • yapf- 另一个来自 Google 的 Python 代码格式化程序。
  • 静态类型检查器,另请参见 awesome-python-typing

  • 静态类型注释生成器

    • MonkeyType- 一个用于 Python 的系统,通过收集运行时类型来生成静态类型注释。
    • pyannotate- 自动生成 PEP-484 注释。
    • pytype -pytype 检查并推断 Python 代码的类型 - 无需类型注释。
  • 渗透测试的框架和工具。

  • 用于测试代码库和生成测试数据的库。

    • 测试框架

      • hypothesis –假设是一个高级的 Quickcheck 样式基于属性的测试库。
      • nose2 -nose 基于 `unittest2。的后继者。
      • pytest- 一个成熟的功能齐全的 Python 测试工具。
      • Robot Framework 通用的测试自动化框架。
      • unittest-(Python 标准库)单元测试框架。
    • 测试选手

      • green - 干净,多彩的测试运行器。
      • mamba -Python 的权威测试工具。生于 BDD 的旗帜下。
      • tox- 自动构建和测试多个 Python 版本的发行版
    • GUI / Web 测试

      • locust- 用 Python 编写的可扩展用户负载测试工具。
      • PyAutoGUI -PyAutoGUI 是适用于人类的跨平台 GUI 自动化 Python 模块。
      • Schemathesis- 用于对基于 Open API / Swagger 规范构建的 Web 应用程序进行基于属性的自动测试的工具。
      • Selenium - Selenium WebDriver 的 Python 绑定。
      • sixpack- 与语言无关的 A / B 测试框架。
      • splinter- 用于测试 Web 应用程序的开源工具。
    • Mock

      • doublex- 强大的 Python 测试框架加倍。
      • Frozengun- 通过模拟 datetime 模块来穿越时间。
      • httmock- 一个针对 Python 2.6 + 和 3.2 + 的请求的模拟库。
      • httpretty- 适用于 Python 的 HTTP 请求模拟工具。
      • mock-(Python 标准库)一个模拟和修补库。
      • mocket - 具有 gevent /asyncio/ SSL 支持的套接字模拟框架。
      • responses 一个实用程序库,用于模拟请求 Python 库。
      • VCR.py- 记录并重放测试中的 HTTP 交互。
    • 对象工厂

      • factory_boy -Python 的测试装置替代品。
      • mixer- 另一种灯具更换。支持 Django,Flask,SQLAlchemy,Peewee 等
      • model_mommy- 创建随机夹具以在 Django 中进行测试。
    • 代码覆盖率

    • 伪数据

      • fake2db- 伪数据库生成器。
      • faker- 一个生成伪造数据的 Python 包。
      • mimesis- 是一个 Python 库,可帮助您生成虚假数据。
      • radar - 生成随机的日期时间 / 时间。
  • 用于验证数据的库。

    • Cerberus- 一个轻量级和可扩展的数据验证库。
    • colander- 验证和反序列化通过 XML,JSON 和 HTML 表单发布获得的数据。
    • jsonschema - Python 的 JSON 模式的实现。
    • schema- 用于验证 Python 数据结构的库。
    • Schematics –数据结构验证。
    • valideer - 轻量级可扩展数据验证和适配库。
    • voluptuous - 的 - 一个 Python 数据验证库。

十、web 框架

传统的全栈 Web 框架。另请参阅 RESTful API

十一、搜索

用于对数据建立索引并执行搜索查询的库和软件。

十二、日志记录

用于生成和使用日志的库。

  • logbook - - 记录 Python 的替换记录。
  • logging-(Python 标准库)Python 的日志记录工具。
  • loguru- 旨在以 Python 带来令人愉悦的日志记录的库。
  • sentry- python - 适用于 Python 的 Sentry SDK。
  • structlog- 结构化日志变得容易。

十三、并发与并行

用于并发和并行执行的库。另请参阅 awesome-asyncio

十四、任务队列

用于处理任务队列的库。

  • celery- 基于分布式消息传递的异步任务队列 / 作业队列。
  • Dramatiq- 用于 Python 3 的快速可靠的后台任务处理库。
  • huey- 小多线程任务队列。
  • mrq- 使用 Redis 和 gevent 的 Python 中的分布式工作者任务队列。
  • rq -Python 的简单作业队列。

十五、自然语言处理

用于使用人类语言的图书馆。

  • 一般的

    • gensim- 人类主题建模。
    • langid.py- 独立的语言识别系统。
    • nltk- 用于构建 Python 程序以使用人类语言数据的领先平台。
    • pattern- 一个 Web 挖掘模块。
    • polyglot- 支持数百种语言的自然语言管道。
    • pytext 的 - 基于 PyTorch 自然语言建模框架。
    • PyTorch-NLP- 一种工具包,可用于研究的快速深度学习 NLP 原型。
    • spacy - 一种用于 Python 和用 Cython 工业强度的自然语言处理库。
    • Stanza -Stanford NLP Group 的官方 Python 库,支持 60 多种语言。
  • 中国人

    • funNLP- 中国 NLP 的工具和数据集的集合。
    • jieba- 最受欢迎的中文文本分割库。
    • pkuseg-python- 用于各种领域的中文分词的工具包。
    • snownlp- 用于处理中文文本的库。

十六、深度学习、机器学习、计算机视觉

  • 神经网络和深度学习框架。另请参阅真棒深度学习

    • caffe- 深度学习的快速开放框架。
    • keras- 一个高级神经网络库,能够在 TensorFlow 或 Theano 之上运行。
    • mxnet- 专为效率和灵活性而设计的深度学习框架。
    • pytorch- 具有强大 GPU 加速功能的 Python 中的张量和动态神经网络。
    • SerpentAI- 游戏代理框架。使用任何视频游戏作为深度学习沙箱。
    • tensorflow- 由 Google 创建的最受欢迎的深度学习框架。
    • Theano- 一个用于快速数值计算的库。
  • 机器学习图书馆。另请参阅很棒的机器学习

    • 健身房 - 用于开发和比较强化学习算法的工具包。
    • H2O- 开源快速可扩展机器学习平台。
    • 指标 - 机器学习评估指标。
    • NuPIC -Numenta 智能计算平台。
    • scikit-learn- 最受欢迎的机器学习 Python 库。
    • Spark ML - Apache Spark 的可扩展机器学习库。
    • vowpal_porpoise- 用于 Vowpal Wabbit 的轻量级 Python 包装器。
    • xgboost- 一个可扩展,可移植和分布式的梯度增强库。
    • MindsDB -MindsDB 是现有数据库的开源 AI 层,可让您使用标准查询轻松地开发,训练和部署最新的机器学习模型。
  • 计算机视觉图书馆。

十七、数据分析、可视化

  • 用于数据分析的库。

    • AWS Data Wrangler -AWS 上的 Pandas。
    • Blaze -NumPy 和 Pandas 连接到大数据。
    • Pandas 界面中的 Open Mining- 商业智能(BI)。
    • Optimus –敏捷数据科学的工作流程变得容易与 PySpark。
    • Orange –通过可视化编程或脚本进行数据挖掘,数据可视化,分析和机器学习。
    • Pandas- 一个提供高性能,易于使用的数据结构和数据分析工具的库。
  • 用于可视化数据的库。另请参阅 awesome-javascript

    • Altair- 用于 Python 的声明性统计可视化库。
    • Bokeh- 用于 Python 的交互式 Web 绘图。
    • bqplot -Jupyter Notebook 的交互式绘图库
    • Cartopy- 具有 matplotlib 支持的制图 python 库
    • 短跑 - 建立在烧瓶顶部,反应,Plotly 旨在分析 Web 应用程序。
    • 图表 - 图表为代码。
    • Matplotlib- 一个 Python 2D 绘图库。
    • plotnine- 基于 ggplot2 的 Python 图形语法。
    • Pygal- 一个 Python SVG 图表创建器。
    • PyGraphviz - Graphviz 的 Python 接口。
    • PyQtGraph- 交互式和实时 2D / 3D / 图像绘制以及科学 / 工程小部件。
    • Seaborn - 使用 Matplotlib 统计数据可视化。
    • VisPy- 基于 OpenGL 的高性能科学可视化。

十八、数据库驱动程序

用于连接和操作数据库的库。

十九、DevOps 工具

    DevOps 的软件和库。

  • 配置管理

    • ansible- 一个非常简单的 IT 自动化平台。
    • cloudinit- 一个多分发包,用于处理云实例的早期初始化。
    • OpenStack- 用于构建私有和公共云的开源软件。
    • pyinfra- 通用的 CLI 工具和 python 库,可自动执行基础架构。
    • saltstack- 基础结构自动化和管理系统。
  • SSH 样式的部署

    • cuisine - 类似于 Fabric 的厨师功能。
    • fabric - 一个简单的,Python 化工具,用于远程执行和部署。
    • fabtools- 编写很棒的 Fabric 文件的工具。
  • 流程管理

    • honcho - Foreman 的 Python 克隆,用于管理基于 Procfile 的应用程序。
    • supervisor - 用于 UNIX 监事过程控制系统。
  • 监控方式

    • psutil- 跨平台的流程和系统实用程序模块。
  • 后备

    • BorgBackup- 具有压缩和加密功能的重复数据删除存档器。
  • 其他

二十、分布式计算

分布式计算的框架和库。

  • 批量处理

    • dask- 用于分析计算的灵活并行计算库。
    • luigi- 一个模块,可帮助您构建批处理作业的复杂管道。
    • mrjob- 在 Hadoop 或 Amazon Web Services 上运行 MapReduce 作业。
    • PySpark - Apache Spark Python API。
    • Ray- 用于并行和分布式 Python 的系统,统一了机器学习生态系统。
  • 流处理

二十一、配置、打包构建

  • 用于存储和解析配置选项的库。

    • configobj- 带有验证的 INI 文件解析器。
    • configparser-(Python 标准库)INI 文件解析器。
    • hydra -Hydra 是用于优雅配置复杂应用程序的框架。
    • profig- 使用值转换从多种格式进行配置。
    • python-decouple- 严格将设置与代码分开。
  • 用于创建打包的可执行文件以进行发行的库。

    • dh-virtualenv- 以 Debian 软件包的形式构建和分发 virtualenv。
    • Nuitka - 将脚本,模块,程序包编译为可执行文件或扩展模块。
    • py2app- 冻结 Python 脚本(Mac OS X)。
    • py2exe- 冻结 Python 脚本(Windows)。
    • pyarmor- 一种用于混淆 python 脚本,将混淆后的脚本绑定到固定计算机或使混淆后的脚本失效的工具。
    • PyInstaller- 将 Python 程序转换为独立的可执行文件(跨平台)。
    • pynsist- 用于构建 Windows 安装程序的工具,安装程序将 Python 本身捆绑在一起。
    • shiv- 命令行实用程序,用于构建完全独立的 zipapp(PEP 441),但包括其所有依赖项。

二十二、虚拟环境

用于 Python 版本和虚拟环境管理的库。

  • pyenv- 简单的 Python 版本管理。
  • virtualenv- 创建隔离的 Python 环境的工具。

二十三、界面开发

用于处理图形用户界面应用程序的库。

  • curses - - 内置包装器 ncurses 的用于创建终端 GUI 的应用程序。
  • Eel- 一个用于制作简单的类似于电子的脱机 HTML / JS GUI 应用程序的库。
  • enaml- 使用声明性语法(如 QML)创建漂亮的用户界面。
  • Flexx -Flexx 是用于创建 GUI 的纯 Python 工具包,它使用 Web 技术进行呈现。
  • Gooey - 使用命令行将命令行程序转换为完整的 GUI 应用程序。
  • kivy- 用于创建 NUI 应用程序的库,可在 Windows,Linux,Mac OS X,androidios 上运行。
  • pyglet -Python 的跨平台窗口和多媒体库。
  • PyGObject -GLib / GObject / GIO / GTK +(GTK + 3)的 Python 绑定。
  • PyQt - Qt 跨平台应用程序和 UI 框架的 Python 绑定。
  • PySimpleGUI - tkinter,Qt,WxPython 和 Remi 的包装。
  • pywebview- 围绕 webview 组件的轻量级跨平台本机包装器。
  • Tkinter -Tkinter 是 Python 的事实上的标准 GUI 软件包。
  • Toga -Python 本机,OS 本机 GUI 工具箱。
  • urwid- 一个用于创建终端 GUI 应用程序的库,该库对小部件,事件,丰富的颜色等具有强大的支持。
  • wxPython -wxWidgets C ++ 类库与 Python 的混合。
  • DearPyGui- 一个简单的 GPU 加速的 Python GUI 框架

二十四、游戏开发

很棒的游戏开发库。

  • Arcade -Arcade 是一个现代 Python 框架,用于制作具有引人注目的图形和声音的游戏。
  • Cocos2d -cocos2d 是用于构建 2D 游戏,演示和其他图形 / 交互应用程序的框架。
  • Harfang3D- 用于 3D,VR 和游戏开发的 Python 框架。
  • Panda3D- 迪士尼开发的 3D 游戏引擎。
  • Pygame -Pygame 是一组旨在编写游戏的 Python 模块。
  • PyOgre -Ogre 3D 渲染引擎的 Python 绑定,可用于游戏,模拟或任何 3D。
  • PyOpenGL -OpenGL 及其相关 API 的 Python ctypes 绑定。
  • PySDL2 -SDL2 库的基于 ctypes 的包装器。
  • RenPy- 一个视觉小说引擎

二十五、任务调度器

用于计划作业的库。