Python中用于从图像中提取文本的8大OCR库

介绍

你是否曾想过你的电脑如何能够从图像中读取文字?这都要归功于一种叫做光学字符识别(Optical Character Recognition, OCR)的技术。

在Python中,有一些非常酷的库可以帮助你的电脑理解图片中的文字。从谷歌强大的Tesseract到EasyOCR时髦的深度学习,这些库能够做一些非常了不起的事情。

让我们来看看Python中的OCR库,了解这些库是如何将图像转换成可读文字的吧!

15acd56bdca90da6cf1fc050454d7532.jpeg

目录

  1. EasyOCR

  2. Doctr

  3. Keras-OCR

  4. Tesseract

  5. GOCR

  6. Pytesseract

  7. OpenCV

  8. Amazon Textract

  9. 结论

1. EasyOCR

EasyOCR以其用户友好的方法和深度学习驱动的模型简化了使用 Python 从图像中提取文本的过程。它支持多种语言,使其适用于国际应用程序。无论是印刷的还是手写的,水平还是垂直对齐,EasyOCR 都能熟练地处理各种文本样式和方向。它的效率确保了快速的性能,非常适合实时应用程序。

EasyOCR 的开源性质方便用户修改和贡献。它使用户能够根据自己的需求进行定制。它还提供了一种可靠且易于使用的方法,用于从照片中删除文本、优化文档处理、创建应用程序和提高可访问性。

安装和实施 EasyOCR 的步骤
步骤1:安装Python

首先,确保你的系统上安装了 Python。你可以从 Python 官方网站下载它并按照安装说明进行操作。

步骤2:安装 EasyOCR

安装 Python 后,打开命令行或终端并运行以下命令使用 pip 安装 EasyOCR。

pip install easyocr
步骤3:安装依赖项

EasyOCR 有一些需要安装的依赖项。不用担心;pip 会自动帮你安装这些依赖项。

步骤4:使用EasyOCR

现在 EasyOCR 已安装,你的 Python 脚本可以使用它。这是如何使用 EasyOCR 从图像中提取文本的基本说明。

import easyocr

# Create an OCR reader object
reader = easyocr.Reader(['en'])

# Read text from an image
result = reader.readtext('image.jpg')

# Print the extracted text
for detection in result:
    print(detection[1])

如果你安装了 EasyOCR,现在你可以在 Python 程序中轻松从照片中提取文本。无论你是要提高可访问性还是自动化数据输入,EasyOCR 都能让文本提取变得简单。

2. Doctr

Doctr 是一个用于文档理解和处理的 Python 库,专为机器学习和自然语言处理应用而设计。它有助于完成文档布局分析、文本提取和语义理解等任务。

Doctr 可识别文档中的文本区域、图像和表格,并提供光学字符识别以从各种格式中提取文本。它还旨在通过命名实体识别和情感分析来理解语义含义。

Doctr 可扩展、高效,适用于生产环境中的大量文档。它鼓励社区贡献,并为自定义组件提供可扩展的架构。

安装和实施 Doctr 的步骤
步骤1:安装Doctr

你可以使用 Python 的包管理器 pip 安装 Doctr。打开命令行或终端并运行以下命令。

pip install doctr
步骤2:导入必要的模块

在你的 Python 脚本或笔记本中,导入文档处理任务所需的 Doctr 模块。

例如:

from doctr.models import ocr_predictor
步骤3:加载文档

根据你的使用情况,加载要处理的文档。Doctr 支持各种文档格式,包括 PDF 和图像。

步骤4:执行文档理解任务

使用 Doctr 的功能执行文档布局分析、文本提取和语义理解等任务。例如,你可以使用 OCR 预测器从图像中提取文本:

# Load an image
image_path = 'example_image.jpg'

# Create an OCR predictor
predictor = ocr_predictor.create_predictor()

# Perform OCR on the image
result = predictor(image_path)

# Print the extracted text
print(result)
步骤 5:与你的工作流程整合

一旦你对实施感到满意,请将 Doctr 集成到你的工作流程或应用程序中,以自动执行文档处理任务并简化你的工作流程。

这些步骤将帮助你在 Python 环境中安装和使用 Doctr。以便你可以快速有效地完成与文档理解和处理相关的活动。

3. Keras-OCR

Keras-OCR 是一个 Python 库,可通过 Keras 和 TensorFlow 框架简化 OCR 任务。它提供预训练模型,对各种文本和字体样式都具有高精度。其用户友好的 API 可轻松实现。Keras-OCR 具有灵活的配置功能,允许自定义输入图像大小和目标语言等参数。其开源特性促进了协作环境,提高了生产力并将 OCR 功能集成到 Python 应用程序中。

安装和实施 Keras-OCR 的步骤

要在 Python 中实现 Keras-OCR 进行文本识别,请按照以下步骤操作:

步骤1:安装Keras-OCR

使用 pip 在你的 Python 环境中安装 Keras-OCR 库。

pip install keras-ocr
步骤2:导入必要的模块

在你的 Python 脚本或笔记本中,从 Keras-OCR 导入所需的模块。

import keras_ocr
步骤3:加载预训练模型

Keras-OCR 提供了用于文本识别的预训练模型。你可以使用pipeline.Pipeline()函数加载其中一个模型。

pipeline = keras_ocr.pipeline.Pipeline()
步骤4:进行文本识别

使用已加载的管道对图像执行文本识别。你可以将单个图像或图像列表传递给 recognize() 函数。

images = ['image1.jpg', 'image2.jpg']  # List of image file paths
predictions = pipeline.recognize(images)

这将返回每个图像的预测,包含有关检测到的文本区域和识别的文本的信息。

步骤5:显示结果

然后,你可以迭代预测以显示识别的文本并可视化文本区域:

for image, prediction in zip(images, predictions):
    keras_ocr.tools.drawAnnotations(image=image, predictions=prediction)
步骤6:集成

最后,根据需要将文本识别功能集成到你的 Python 应用程序或工作流程中。

按照以下步骤,你可以轻松地在 Python 项目中实现 Keras-OCR 进行文本识别。这些使你能够以高精度和高效率从图像中提取文本。

4. Tesseract

Tesseract 是 Google 维护的一款开源 OCR 引擎。它以出色的图像文本识别准确度而闻名。它支持 100 多种语言,可以处理各种图像类型,包括扫描文档和照片。用户可以自定义页面分割模式和语言模型等参数,以优化识别准确度。

Tesseract 鼓励社区贡献,并且易于与 Python 集成,为开发人员提供了一个简单的界面,可将 OCR 功能整合到他们的应用程序中。

安装和实施 Tesseract 的步骤

为了在 Python 中使用 Tesseract OCR,需要安装 pytesseract 库。Tesseract 引擎封装在此库中。以下是详细步骤:

步骤1:安装Tesseract

首先,你需要在系统上安装 Tesseract OCR 引擎。你可以从此处下载并安装它:https://github.com/tesseract-ocr/tesseract

步骤2:安装 pytesseract

接下来,pytesseract使用 pip 安装该库:

pip install pytesseract
步骤3:导入 pytesseract

在你的 Python 脚本或笔记本中导入 pytesseract 模块:

import pytesseract
步骤4:设置 Tesseract 路径(可选)

如果 Tesseract 未安装在默认系统路径中,则必须使用 pytesseract.pytesseract.tesseract_cmd 变量来定义 Tesseract 的位置:

pytesseract.pytesseract.tesseract_cmd = r'/path/to/tesseract'
步骤5:执行OCR

使用 image_to_string() 函数对图像执行 OCR。将图像文件路径作为参数传递:

# Perform OCR on an image
text = pytesseract.image_to_string('image.jpg')

这将从图像中提取文本并将其存储在text变量中。

步骤6:显示结果

然后你可以根据需要打印或处理提取的文本:

print(text)

按照以下说明,你可以在 Python 环境中快速集成 Tesseract OCR 以从照片中提取文本。

请记住,Tesseract 的准确性会根据多种变量而变化,包括语言、文本复杂性和图像质量。对于特定使用情况,修改参数和准备照片可以帮助提高 OCR 准确性。

5. GOCR

GOCR 是一款开源 OCR 引擎,根据 GNU 通用公共许可证创建,允许用户在各种平台上从照片中提取文本。它包括一些基本的文本识别功能,并与众多系统兼容。但它主要专注于英语,不支持其他语言。

由于缺乏积极的开发和有限的语言支持,与更现代的选项相比,它对某些应用程序的功效可能有限。

安装和实施 GOCR 的步骤

安装 GOCR 程序并利用其命令行界面 (CLI) 对照片执行光学字符识别是实施 GOCR 的第一步。以下是一般的实施方法:

步骤1:安装GOCR

根据你的操作系统,你可能能够使用包管理器(例如 Ubuntu 上的 apt 或 macOS 上的 Homebrew)安装 GOCR。或者,你可以下载源代码并手动编译。

步骤2:准备图像

准备包含要识别的文本的图像。确保图像清晰且质量足够高,以实现准确的 OCR。

步骤3:从命令行运行该库

使用 GOCR 命令行界面对图片执行 OCR。以下是在名为“image.jpg”的图片文件上运行 GOCR 的基本命令。

gocr image.jpg

它将处理图像并将识别的文本输出到终端。

步骤4:处理输出

一旦 GOCR 完成图像处理,你就可以从终端捕获输出文本并根据需要在应用程序中使用它。

请记住,与更现代的 OCR 引擎相比,此库在准确性、语言支持和易用性方面可能存在局限性。如果 GOCR 达不到标准,则必须评估你的需求并考虑其他 OCR 选项。

6. Pytesseract

Pytesseract 允许将 Google 的 Tesseract-OCR Engine 集成到 Python 程序中。它提供了一种有效的光学字符识别方法。由于其直观的界面,用户几乎不需要任何编码知识就可以从照片中提取文本。

Pytesseract 支持多种语言,包括英语、法语、西班牙语和德语,并与 Windows、macOS 和 Linux 操作系统兼容。

使用 Pytesseract ,可以处理不同字体、大小和样式的文本。开发人员可以调整 OCR 参数以最大限度地提高准确性。

此外,Pytesseract 还可以与 Python Imaging Library Pillow 交互,从而实现 OCR 过程之前的预处理。

安装和实施 Pytesseract 的步骤

安装 pytesseract 库并使用它对照片执行光学字符识别 (OCR) 是 pytesseract 的实现。以下是如何在 Python 中逐步使用 Pytesseract:

步骤1:安装Tesseract

在使用 pytesseract 之前,你需要在系统上安装 Tesseract OCR 引擎。你可以从这里下载并安装它:https://github.com/tesseract-ocr/tesseract

步骤2:安装 pytesseract

接下来,使用 pip 安装 pytesseract 库:

pip install pytesseract
步骤3:导入 pytesseract

在你的 Python 脚本或笔记本中导入 pytesseract 模块:

import pytesseract
步骤4:对图像执行OCR

使用pytesseract 中的函数image_to_string()对图像执行 OCR。

将图像文件路径作为参数传递:

# Perform OCR on an image
text = pytesseract.image_to_string('image.jpg')

这将从图像中提取文本并将其存储在text变量中。

步骤5:可选配置

你可以配置 pytesseract 以使用特定的 OCR 参数,例如语言和页面分割模式。

例如:

# Set language (default is English)
pytesseract.pytesseract.tesseract_cmd = r'/path/to/tesseract'
tessdata_dir_config = '--tessdata-dir "/usr/share/tesseract-ocr/4.00/tessdata"'
text = pytesseract.image_to_string('image.jpg', config=tessdata_dir_config)
步骤6:显示结果

最后,你可以根据需要打印或处理提取的文本:

print(text)

这些步骤将帮助你快速将 Pytesseract 集成到 Python 环境中,以便你可以使用 OCR 从照片中提取文本。请记住,许多变量(如语言、文本复杂性和图像质量)都会影响 OCR 的准确性。对于特定使用情况,修改参数和准备照片可以帮助提高 OCR 准确性。

7. OpenCV

OpenCV 由英特尔创建,并由全球开发者社区不断更新。它是计算机视觉和机器学习的重要工具。可用于各种用途,例如图像处理、对象检测、人脸识别、增强现实和机器人技术。它提供了广泛的功能和技术。

OpenCV 的 Python 接口有助于快速开发和原型设计,其跨平台兼容性保证可在多个系统上访问。

OpenCV 是计算机视觉的基础库,可与其他 Python 库(如 NumPy、SciPy 和 TensorFlow)无缝集成。这使开发人员能够在一系列领域设计创新应用程序。

安装和实施 OpenCV 的步骤

安装库并利用其功能执行不同的计算机视觉任务构成了 OpenCV 的实现。以下是如何在 Python 中使用 OpenCV 处理图像的简单说明:

步骤1:安装OpenCV

使用 pip 在你的 Python 环境中安装 OpenCV 库。

pip install opencv-python
步骤2:导入OpenCV

在你的 Python 脚本或笔记本中导入 OpenCV 库:

import cv2
步骤3:读取图像

使用cv2.imread()函数从文件读取图像:

# Read an image from file
image = cv2.imread('image.jpg')
步骤4:显示图像

使用cv2.imshow()函数在窗口中显示图像:

# Display the image in a window
cv2.imshow('Image', image)
步骤5:等待用户输入

使用 cv2.waitKey() 函数等待按键关闭窗口:

# Wait for a key press and close the window
cv2.waitKey(0)
cv2.destroyAllWindows()
步骤6:执行图像处理(可选)

你可以使用各种 OpenCV 函数执行图像处理任务,例如调整大小、裁剪、过滤等:

# Resize the image
resized_image = cv2.resize(image, (width, height))

# Convert the image to grayscale
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# Apply Gaussian blur to the image
blurred_image = cv2.GaussianBlur(image, (5, 5), 0)
步骤7:保存处理后的图像(可选)

使用cv2.imwrite()函数将处理后的图像保存到文件:

# Save the processed image to file
cv2.imwrite('processed_image.jpg', processed_image)

通过遵循这些步骤,你可以轻松地在 Python 环境中实现 OpenCV 来执行各种图像处理任务。OpenCV 提供了广泛的功能和能力,允许你处理图像、检测对象、跟踪运动等等。

尝试不同的函数和参数将帮助你探索 OpenCV 在计算机视觉应用中的全部潜力。

8. Amazon Textract

Amazon Textract 是 Amazon Web Services (AWS) 提供的一项机器学习服务,可高效地从文档中提取文本和数据。它使用高级算法来识别和分析结构化数据,包括文本、表格和表单。它对财务报告和发票特别有用。

Textract 可自动提取键值对和表单数据,从而简化数据输入和处理工作流程。它还提供高级文档分析功能。

Amazon Textract 与其他 AWS 服务集成,确保可扩展性、高性能和可靠性。它还为金融、医疗保健、法律和政府等各个领域的文档处理提供了安全的环境。

安装和实施 Amazon Textract 的步骤

实施 Amazon Textract 涉及使用 AWS SDK 与 Textract API 交互。

以下是在 Python 中实施 Amazon Textract 的步骤的高级概述:

步骤 1:设置 AWS 凭证

确保你已配置具有适当权限的 AWS 凭证以访问 Textract 服务。

步骤2:安装AWS SDK

使用 pip 安装适用于 Python (Boto3) 的 AWS SDK:

pip install boto3
步骤3:初始化 Textract 客户端

使用 Boto3 库和你的 AWS 凭证创建 Textract 客户端对象:

import boto3

# Initialize Textract client
textract_client = boto3.client('textract', region_name='your-region', aws_access_key_id='your-access-key-id', aws_secret_access_key='your-secret-access-key')
步骤4:处理文件

使用Textract客户端的analyze_document()方法分析文档,提取文本和数据:

# Process document
response = textract_client.analyze_document(Document={'S3Object': {'Bucket': 'your-bucket-name', 'Name': 'your-document-key'}}, FeatureTypes=['TABLES', 'FORMS'])

这将返回包含从文档中提取的文本、表格和表单的响应。

步骤5:访问提取的数据

可以从响应对象中访问提取的文本、表格和表单,并根据需要进一步处理:

# Extract text
extracted_text = response['Blocks']

# Extract tables
extracted_tables = [block for block in extracted_text if block['BlockType'] == 'TABLE']

# Extract forms
extracted_forms = [block for block in extracted_text if block['BlockType'] == 'KEY_VALUE_SET']
步骤6:处理错误和异常

实现错误处理,以优雅地处理文档处理过程中可能发生的异常和错误:

try:
    response = textract_client.analyze_document(Document={'S3Object': {'Bucket': 'your-bucket-name', 'Name': 'your-document-key'}}, FeatureTypes=['TABLES', 'FORMS'])
except Exception as e:
    print(f'Error processing document: {e}')
步骤7:进一步处理与整合

根据你的应用程序要求,你可能需要进一步处理提取的文本、表格和表单,并将其集成到你的工作流程或应用程序中。

通过遵循这些步骤,你可以在 Python 应用程序中实施 Amazon Textract,以从存储在 Amazon S3 中的文档中提取文本和数据。

请务必参考 AWS 文档以获取有关 Textract API 及其用法的详细信息。

结论

光学字符识别 (OCR) 彻底改变了计算机文本理解,支持各种应用。Python 提供了八个顶级 OCR 库,每个库都具有独特的功能。EasyOCR 易于使用,Tesseract 准确,Amazon Textract 高效。

OCR 库可满足各种需求和用例,可自动执行任务、简化工作流程并从非结构化数据中提取有价值的见解。随着机器学习和计算机视觉的进步,OCR 的未来充满创新和增强的光明前景。

☆ END ☆

如果看到这里,说明你喜欢这篇文章,请转发、点赞。微信搜索「uncle_pn」,欢迎添加小编微信「 woshicver」,每日朋友圈更新一篇高质量博文。

扫描二维码添加小编↓

842b828749e739d9dbf655ab8616c670.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/732122.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

热点观察 | 全球社交应用IAP收入持续上升,小游戏、短剧出海赛道火热!

2024年进度条即将过半,回顾上半年,“Sora横空出世”、“短剧出海”、“小游戏爆款不断"给了我们太多惊喜,虽说如今市场竞争激烈、行业日趋饱和,但新技术、新需求也在快速跟上。下面,我们就来盘一盘近期全球手游和…

Python | Leetcode Python题解之第166题分数到小数

题目&#xff1a; 题解&#xff1a; class Solution:def fractionToDecimal(self, numerator: int, denominator: int) -> str:if numerator % denominator 0:return str(numerator // denominator)s []if (numerator < 0) ! (denominator < 0):s.append(-)# 整数部…

开发指南033-数据库兼容

元芳&#xff0c;你怎么看&#xff1f; 单一数据库自身就有一些不同处理之处&#xff0c;如果一个平台要兼容所有数据库&#xff0c;就是难上加难&#xff0c;像isnull函数各数据库就不同。 对于这类问题&#xff0c;平台采用统一自定义函数解决&#xff0c;例如上面的round函…

【Leetcode】2663. 字典序最小的美丽字符串

题目 题目链接&#x1f517;如果一个字符串满足以下条件&#xff0c;则称其为 美丽字符串 &#xff1a; 它由英语小写字母表的前 k 个字母组成。它不包含任何长度为 2 或更长的回文子字符串。 给你一个长度为 n 的美丽字符串 s 和一个正整数 k 。请你找出并返回一个长度为 n…

Android低版本上APP首次启动时间减少80%(二)

06-25 15:10:53.821 7449 7450 D dalvikvm: threadid2: sending two SIGSTKFLTs to threadid135 (tid8021) to cause debuggerd dump SIGSTKFLT 是 Dalvik 虚拟机特有的一个信号。当虚拟机发生了 ANR 或者需要做 GC 的时候&#xff0c;就需要挂起所有 RUNNING 状态的线程&…

技巧:合并多个RAR分卷压缩

因为文件压缩之后体积仍然过大&#xff0c;大家可能会选择进行分卷压缩&#xff0c;那么rar分卷压缩包之后如何合并成一个压缩包文件呢&#xff1f;今天我们来学习rar分卷压缩包&#xff0c;合并成一个的方法。 最基础的方法就是将分卷压缩包解压出来之后&#xff0c;再将文件…

第10章 启动过程组 (概述)

第10章 启动过程组 概述&#xff0c;在第三版教材第354~355页&#xff1b; 文字图片音频方式 视频11 第一个知识点&#xff1a;两个过程 如图10-1 启动过程组第二个知识点&#xff1a;目的 协调各方干系人的期望与项目目的&#xff0c;告知各干系人项目范围和目标&#xff0c…

如何用 Google Chrome 浏览器浏览经过 XSLT 渲染的 XML 文件

对于经过XSLT渲染的XML文件&#xff0c;本来&#xff0c;可以直接用 IE (Internet Explorer) 打开&#xff0c;就能看到渲染之后的样子&#xff0c;很方便。但是后来&#xff0c;微软把 IE 换成了 Microsoft Edge&#xff0c;按理说这是比 IE 更先进的浏览器&#xff0c;可是偏…

软件缺陷及JIRA工具

一、软件缺陷及跟踪流程 1&#xff0c;软件缺陷信息 案例 &#xff08;1&#xff09;缺陷报告的基本内容 缺陷的标题 预置条件 重现步骤 期望结果 实际结果 &#xff08;2&#xff09;软件缺陷的状态 新建 打开 修复 关闭 &#xff08;3&#xff09;软件缺陷的严重程度 …

【计算机毕业设计】204基于微信小程序疫情期间学生请假与销假系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

【论文阅读】-- Attribute-Aware RBFs:使用 RT Core 范围查询交互式可视化时间序列颗粒体积

Attribute-Aware RBFs: Interactive Visualization of Time Series Particle Volumes Using RT Core Range Queries 摘要1 引言2 相关工作2.1 粒子体渲染2.2 RT核心方法 3 渲染彩色时间序列粒子体积3.1 场重构3.1.1 密度场 Φ3.1.2 属性字段 θ3.1.3 优化场重建 3.2 树结构构建…

灵感枯竭?来看Charls,新指标发一区(IF=9.3)| CHARLS等七大老年公共数据库周报(6.12)...

七大老年公共数据库 七大老年公共数据库共涵盖33个国家的数据&#xff0c;包括&#xff1a;美国健康与退休研究 (Health and Retirement Study, HRS)&#xff1b;英国老龄化纵向研究 &#xff08;English Longitudinal Study of Ageing, ELSA&#xff09;&#xff1b;欧洲健康、…

快速识别银行卡,API接口让金融更智能

随着科技的不断进步&#xff0c;金融行业也变得越来越智能化。一项名为银行卡识别的技术&#xff0c;正在逐渐改变着我们的金融生活。使用API接口&#xff0c;我们能够快速准确地识别银行卡的卡号、有效期、发卡行和卡片类型等关键字段&#xff0c;不仅方便了用户&#xff0c;也…

visual studio 创建c++项目

目录 环境准备&#xff1a;安装 visual studiovisual studio 创建c项目Tips&#xff1a;新建cpp文件注释与取消注释代码 其他初学者使用Visual Studio开发C和C时常遇到的3个坑 环境准备&#xff1a;安装 visual studio 官网&#xff1a;https://visualstudio.microsoft.com/zh…

威纶通触摸屏软件出现显示异常问题(显示黑色)处理方法

异常现象 电脑端显示异常&#xff0c;显示黑色 解决方法 Step1&#xff1a;软件根目录查找DisplaySetting.exe Step2&#xff1a;勾选第1或第2项&#xff0c;重启软件即可 分享创作不易&#xff0c;请多多支持&#xff0c;点赞、收藏、关注&#xff01; Ending~

基于java+springboot+vue实现的电商应用系统(文末源码+Lw)241

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本电商应用系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息&a…

iTextSharp 绘制pdf

一、新建项目&#xff1a;pdfdemo <ItemGroup><PackageReference Include"iTextSharp.LGPLv2.Core" Version"3.4.20" /> </ItemGroup>二、HomeController.cs using iTextSharp.text; using iTextSharp.text.pdf; using Microsoft.AspN…

性能工具之 MySQL OLTP Sysbench BenchMark 测试示例

文章目录 一、前言二、测试环境1、服务器配置2、测试拓扑 三、测试工具安装四、测试步骤1、导入数据2、压测数据3、清理数据 五、结果解析六、最后 一、前言 做为一名性能工程师掌握对 MySQL 的性能测试是非常必要的&#xff0c;本文基于 Sysbench 对MySQL OLTP&#xff08;联…

Python应用开发——30天学习Streamlit Python包进行APP的构建(7)

st.data_editor 显示数据编辑器 widget。 数据编辑器 widget 可让你在类似表格的用户界面中编辑数据框和许多其他数据结构。 警告 When going from st.experimental_data_editor to st.data_editor in 1.23.0, the data editors representation in st.session_state was ch…

展厅装修时候需要注意哪些细节

1、视觉方面 展厅应该具有很强的视觉冲击力。只有这样不论是领导视察还是合作的客户进行参观的时候才会对展厅产生浓厚的兴趣&#xff0c;同时产生一种亲和力&#xff0c;并直接加深对企业的识别度和记忆度。而个性化设计要跟企业文化相符合。这里&#xff0c;企业标志为寻求个…