
Word 是办公中常用的文档格式,而 HTML 是网页内容展示的标准语言。将 Word (.doc或.docx)文档精准转换为 HTML 格式,可以方便地将内容嵌入到网站、内容管理系统或邮件模板中。这种转换尤其适合用于知识库、产品说明、服务协议等需要以网页形式展示文档内容的场景。
本文将介绍如何使用 Spire.Doc for Python 库在Python中实现 Word 到 HTML 的格式转换。内容涵盖基础转换与自定义转换两种实现方式,并提供完整的代码示例,帮助开发者灵活应对不同项目对 HTML 输出的样式与结构控制需求。
将 Word 文档转换为 HTML 格式,适用于多种业务场景,例如:
Spire.Doc for Python 是一款专为 Word 文档处理与格式转换而设计的库。该库功能稳定、易于使用,可在不依赖 Microsoft Word 或 Office 的情况下,将 Word 文档精准导出为 HTML,并保持文档原有的样式与布局。
在终端中运行以下pip命令即可完成安装:
pip install spire.doc
如需详细安装指导,请参考教程:如何在Windows上安装Spire.Doc for Python。
Spire.Doc for Python 支持将 Word 文档以默认或自定义设置转换为 HTML,满足快速导出或样式精细控制等不同需求。下文将分别对这两种实现方式进行详细介绍。
如果仅需将 Word 内容一键转换为 HTML 文件,且不涉及样式修改或结构调整,可通过 LoadFromFile 方法加载 Word 文档,并直接使用 SaveToFile 方法将其保存为 HTML 格式。
Word转HTML 代码示例
from spire.doc import *
from spire.doc.common import *
# 创建 Document 对象
document = Document()
# 加载 Word 文档(支持 DOC 和 DOCX)
document.LoadFromFile("清单.docx")
# 保存为 HTML 格式
document.SaveToFile("Output/Word转Html.html", FileFormat.Html)
# 关闭文档释放资源
document.Close()

若对 HTML 输出的结构与样式有更高的控制需求,可通过 Spire.Doc 提供的 HtmlExportOptions 属性进行自定义配置。通过该属性,开发者可以灵活设置是否保留页眉页脚,是否嵌入图片,CSS 的引用方式,以及表单字段的导出形式等,从而实现更精细的页面布局与资源管理,满足复杂项目对 HTML 格式的个性化要求。
自定义Word到HTML导出选项代码示例
from spire.doc import *
from spire.doc.common import *
# 创建 Document 实例
document = Document()
# 加载 Word 文件
document.LoadFromFile("清单.docx")
# 设置:导出时不包含页眉和页脚
document.HtmlExportOptions.HasHeadersFooters = False
# 设置:指定导出 HTML 使用的外部 CSS 文件名
document.HtmlExportOptions.CssStyleSheetFileName = "sample.css"
# 设置:样式类型为外部引用(非内联)
document.HtmlExportOptions.CssStyleSheetType = CssStyleSheetType.External
# 设置:图片不嵌入 HTML 中,保存在指定文件夹中
document.HtmlExportOptions.ImageEmbedded = False
document.HtmlExportOptions.ImagesPath = "Images/"
# 设置:将表单字段以纯文本形式导出,而不是交互式控件
document.HtmlExportOptions.IsTextInputFormFieldAsText = True
# 保存为 HTML 文件
document.SaveToFile("Output/自定义Word转Html.html", FileFormat.Html)
document.Close()
本文介绍了如何使用 Spire.Doc for Python 将 Word(.doc/.docx)文档精准转换为 HTML 格式,适用于网页展示、CMS 内容导入、邮件模板生成等多种场景。无论是通过快速导出方式实现一键式转换,还是利用自定义导出选项对样式和结构进行精细控制,开发者都可以根据具体项目需求,灵活选择合适的转换方式。
此外,Spire.Doc 还支持 Word 转 PDF、Word 文档合并、查找与替换内容等多种操作,您可以进一步阅读相关教程,深入掌握 Word 文档处理技巧。
Q1:Spire.Doc 是否支持将 DOC 和 DOCX 两种格式转换为 HTML?
A1:支持,Spire.Doc 可兼容旧版 DOC 和现代 DOCX 格式的导出。
Q2:转换过程中是否必须安装 Microsoft Word?
A2:不需要,Spire.Doc 是一个独立运行的库,无需依赖 Word 或 Office。
Q3:转换时是否可以将图片嵌入 HTML 中,而非单独保存?
A3:可以,只需将 ImageEmbedded 属性设置为 True,即可将所有图片嵌入到 HTML 文件中,无需创建额外图片目录。
Q4:Spire.Doc for Python是否支持跨平台运行?
A4:支持。该库不依赖 Office,能够在Windows、Linux和MacOS等多种操作系统和环境中稳定运行。
如需体验 Spire.Doc for .NET 的完整功能(无评估限制),你可以该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。免费 30 天试用授权。
Spire.XLS for Java 13.10.0已发布。该版本新增支持验证限制编辑的密码是否正确的方法。同时,也增强了从Excel到PDF、图像和OFD格式的转换功能。此外,一些已知问题也在该版本中被成功修复,如加载Excel文档时,程序抛出“Invalid ValidationAlertType string val"的问题。详情请阅读以下内容。
新功能:
worksheet.checkProtectionPassword(String password)问题修复:
编辑限制是 Word 文档中的一项安全功能,可以限制他人能对文档所做的修改。通过应用编辑限制,文档所有者可以指定可对文档进行哪种类型的编辑,以及可在文档的哪些部分进行编辑,保护文档内容和格式的完整,从而方便进行协作编辑和信息收集等。本文将介绍如何使用 Spire.Doc for Python 在 Python 程序中限制对 Word 文档的编辑以及移除 Word 文档编辑限制。
本教程需要用到 Spire.Doc for Python 和 plum-dispatch v1.7.4。可以通过以下 pip 命令将它们轻松安装到 Windows 中。
pip install Spire.Doc如果您不确定如何安装,请参考此教程:如何在 Windows 中安装 Spire.Doc for Python
Word 文档中有四种编辑限制:不允许任何更改(只读)、修订、批注和填写窗体。Spire.Doc for Python 提供了 Document.Protect() 方法和 ProtectionType 枚举来对 Word 文档设置指定类型的编辑限制。
下表是 ProtectionType 枚举和对应编辑限制类型及说明:
| 枚举 | 编辑限制类型 | 说明 |
| ProtectionType.AllowOnlyReading | 不允许任何更改(只读) | 只允许阅读文档 |
| ProtectionType.AllowOnlyRevisions | 修订 | 只允许修订文档 |
| ProtectionType.AllowOnlyComments | 批注 | 只允许添加评论 |
| ProtectionType.AllowOnlyFormFields | 填写窗体 | 只允许填写表单 |
| ProtectionType.NoProtection | 无 | 无编辑限制 |
from spire.doc import *
from spire.doc.common import *
# 创建一个Document类对象
doc = Document()
# 加载一个Word文档
doc.LoadFromFile("示例.docx")
# 将编辑限制类型设置为只读(无更改)
doc.Protect(ProtectionType.AllowOnlyReading, "password")
# 将编辑限制类型设置为修订
# doc.Protect(ProtectionType.AllowOnlyRevisions, "password")
# 将编辑限制类型设置为批注
# doc.Protect(ProtectionType.AllowOnlyComments, "password")
# 将编辑限制类型设置为填写窗体
# doc.Protect(ProtectionType.AllowOnlyFormFields, "password")
# 保存文档
doc.SaveToFile("output/编辑限制.docx")
doc.Close()

在设置 Word 文档的编辑限制时,用户可以通过插入允许编辑区域的起始和结束标记来添加例外项(不受限制的区域)。具体操作步骤如下:
from spire.doc import *
from spire.doc.common import *
# 创建一个Document类对象
doc = Document()
# 加载一个Word文档
doc.LoadFromFile("示例.docx")
# 获取第一节
section = doc.Sections.get_Item(0)
# 创建权限起始标记和结束标记
start = PermissionStart(doc, "exception1")
end = PermissionEnd(doc, "exception1")
# 将权限起始标记和结束标记插入到第一节中
paragraph = section.Paragraphs.get_Item(1)
paragraph.ChildObjects.Insert(0, start)
paragraph.ChildObjects.Add(end)
# 设置编辑限制
doc.Protect(ProtectionType.AllowOnlyReading, "password")
# 保存文档
doc.SaveToFile("output/可编辑区域.docx")
doc.Close()

取消文档的编辑限制时,只需使用 Document.Protect() 方法将编辑限制类型设置为无即可。具体步骤如下:
from spire.doc import *
from spire.doc.common import *
# 创建一个Document类对象
doc = Document()
# 加载一个Word文档
doc.LoadFromFile("output/编辑限制.docx")
# 通过将限制类型设置为无限制来移除编辑限制
doc.Protect(ProtectionType.NoProtection)
# 保存文档
doc.SaveToFile("output/移除编辑限制.docx")
doc.Close()

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。
TXT 文本文件是一种存储纯文本数据的简单、通用且易于处理的文件格式。如果想要在文本文件中应用格式或添加图片、图表、表格和其他媒体元素,推荐的方案是将它们转换为 Word 文件。
反之,如果想要有效地提取 Word 文档的内容或减小文件大小,可以将它们转换为文本格式。本文将演示如何使用 Spire.Doc for Python 通过代码实现 Word 文档和 TXT 纯文本文件的互转。
本教程需要用到 Spire.Doc for Python 和 plum-dispatch v1.7.4。可以通过以下 pip 命令将它们轻松安装到 Windows 中。
pip install Spire.Doc如果您不确定如何安装,请参考此教程:如何在 Windows 中安装 Spire.Doc for Python
TXT 文件转换为 Word 文档的操作十分简单,仅需几行代码即可实现。具体步骤如下。
from spire.doc import *
from spire.doc.common import *
# 创建Document类的对象
document = Document()
# 加载文本文件
document.LoadFromFile("示例.txt")
# 将文本文件保存为Word
document.SaveToFile("Output/Txt转Word.docx", FileFormat.Docx2016)
document.Close()

Spire.Doc for Python 提供的 Document.SaveToFile(string fileName, FileFormat.Txt) 方法可将 Word 文件导出为 TXT 纯文本格式。具体步骤如下。
from spire.doc import *
from spire.doc.common import *
# 创建Document类的对象
document = Document()
# 加载Word文件
document.LoadFromFile("云计算.docx")
# 将Word文件保存为txt格式
document.SaveToFile("Output/Word转Txt.txt", FileFormat.Txt)
document.Close()

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。

PDF 文件作为一种通用且广泛使用的文档格式,常见于合同、发票、报告、电子书等多种场景。虽然 PDF 文件在排版和展示效果上表现出色,但由于其底层结构采用图层、对象和坐标的存储方式,导致从 PDF 中直接提取文本变得复杂且具有挑战性。
尤其面对包含大量页码、嵌套表格或图文混排的 PDF 文件时,传统的复制粘贴方法效率低下且难以保持文本的原始格式和结构。为了实现高效、精准的 PDF 文本提取,开发者通常借助专业的 Python PDF 解析库,通过编程方式自动读取并提取所需内容。
本教程将详细介绍如何使用 Spire.PDF for Python 库在 Python 中轻松 实现 PDF 文本的全面提取,包括全文提取、按页提取、按区域提取、过滤隐藏文本,以及获取文本在页面中的坐标和尺寸信息。通过本教程,您将掌握实用的 PDF 文本提取技巧,快速构建自动化处理和数据分析的解决方案。
读取PDF文件内容在诸多应用场景中具有重要意义,例如:
Spire.PDF for Python 是一款功能全面且易于使用的 PDF 处理库,主要用于帮助开发者简化PDF文档创建和操作等任务。它提供了强大的文本提取功能,适用于解析各种结构的 PDF 文档。
您可以通过在终端中运行以下命令轻松安装该库:
pip install spire.pdf
如需了解详细安装步骤,请参考此教程:如何在 Windows 上安装 Spire.PDF for Python
以下示例展示了如何快速提取 PDF 文档中的全部文本。该方法逐页遍历文档,提取每页文本,并将包含空格和换行的完整内容保存到文本文件,便于后续查看和处理。
from spire.pdf.common import *
from spire.pdf import *
# 创建 PdfDocument 对象
doc = PdfDocument()
# 加载 PDF 文件
doc.LoadFromFile("C:/Users/Administrator/Desktop/in.pdf")
# 用于保存提取结果的变量
all_text = ""
# 创建 PdfTextExtractOptions 对象
extractOptions = PdfTextExtractOptions()
# 启用提取全部文本(包含空格)
extractOptions.IsExtractAllText = True
# 遍历每一页并提取文本
for i in range(doc.Pages.Count):
page = doc.Pages.get_Item(i)
textExtractor = PdfTextExtractor(page)
text = textExtractor.ExtractText(extractOptions)
all_text += text + "\n"
# 将提取的文本写入文件
with open("output/Extracted.txt", "w", encoding="utf-8") as file:
file.write(all_text)
doc.Close()
Spire.PDF for Python 提供了多种灵活的文本提取选项,适用于不同场景下的 PDF 内容处理需求。例如,开发者可按页提取文本、限定区域提取内容、提取时过滤隐藏文字,还能获取文本在页面中的坐标位置与尺寸信息,便于精确定位与结构分析。
通过指定页面索引,开发者可以直接提取目标页的文本,而无需循环遍历整个文档。这种方式可以提高处理效率,适用于仅需要处理多页文档中的特定部分的场景。
from spire.pdf.common import *
from spire.pdf import *
# 创建 PdfDocument 对象
doc = PdfDocument()
# 加载 PDF 文件
doc.LoadFromFile("C:/Users/Administrator/Desktop/in.pdf")
# 启用完整文本提取
extractOptions = PdfTextExtractOptions()
extractOptions.IsExtractAllText = True
# 获取第 1 页
page = doc.Pages.get_Item(0)
# 创建 PdfTextExtractor 对象
textExtractor = PdfTextExtractor(page)
# 提取文本
text = textExtractor.ExtractText(extractOptions)
# 写入文件
with open("output/Extracted.txt", "w", encoding="utf-8") as file:
file.write(text)
doc.Close()

获取指定区域的文本可以帮助用户精准提取所需内容,避免处理无关信息。您可以定义一个矩形区域,只提取该区域内的文本。
from spire.pdf.common import *
from spire.pdf import *
# 创建 PdfDocument 对象
doc = PdfDocument()
# 加载 PDF 文件
doc.LoadFromFile("C:/Users/Administrator/Desktop/in.pdf")
# 获取第 1 页
page = doc.Pages[0]
# 创建 PdfTextExtractor 对象
textExtractor = PdfTextExtractor(page)
# 创建提取选项并设置提取区域
extractOptions = PdfTextExtractOptions()
extractOptions.ExtractArea = RectangleF(90.0, 220.0, 770.0, 130.0)
# 提取文本
text = textExtractor.ExtractText(extractOptions)
# 写入文件
with open("output/ExtractedArea.txt","w", encoding="utf-8") as file:
file.write(text)
doc.Close()

某些 PDF 包含隐藏或不可见的文本,例如为辅助功能或 OCR 层添加的内容。如果您只想提取对用户可见的内容,可以选择忽略这些隐藏文本。
from spire.pdf.common import *
from spire.pdf import *
# 创建 PdfDocument 对象
doc = PdfDocument()
# 加载 PDF 文件
doc.LoadFromFile("C:/Users/Administrator/Desktop/in.pdf")
# 设置提取选项以忽略隐藏文本
extractOptions = PdfTextExtractOptions()
extractOptions.IsShowHiddenText = False
# 获取第 1 页
page = doc.Pages[0]
# 创建 PdfTextExtractor 对象
textExtractor = PdfTextExtractor(page)
# 提取文本
text = textExtractor.ExtractText(extractOptions)
# 写入文件
with open("put/ExcludeHiddenText.txt", "w",encoding="utf-8") as file:
file.write(text)
doc.Close()
除了获取文本内容外,Spire.PDF还支持提取其在页面中的位置坐标和尺寸信息,以便进行精确批注、内容定位或页面结构分析。
from spire.pdf.common import *
from spire.pdf import *
# 创建 PdfDocument 对象
doc = PdfDocument()
# 加载 PDF 文件
doc.LoadFromFile("C:/Users/Administrator/Desktop/in.pdf")
# 遍历所有页面
for i in range(doc.Pages.Count):
page = doc.Pages[i]
# 为当前页面创建 PdfTextFinder 对象
finder = PdfTextFinder(page)
# 查找所有文本片段
fragments = finder.FindAllText()
print(f"第 {i + 1} 页:")
# 遍历文本片段并获取其在页面的位置和尺寸
for fragment in fragments:
text = fragment.Text
rects = fragment.Bounds
print(f'文本:"{text}"')
for rect in rects:
print(f"位置:({rect.X}, {rect.Y}),尺寸:({rect.Width} x {rect.Height})")
print()
doc.Close()
借助 Spire.PDF for Python,开发者可以高效、灵活地从 PDF 文件中提取文本。无论是解析整个文档,还是提取特定页面或区域的内容,该库都提供了强大且简便的解决方案。通过自动化文本提取,您可以显著提升工作效率,优化信息管理流程,并为后续的数据分析与业务决策提供有力支持。
想掌握更多 PDF 处理技巧?欢迎查看 【Python PDF 处理全系列教程】。
A1:可以。Spire.PDF for Python 支持在加载PDF时输入正确密码,从而打开受保护的PDF文件并提取其中的文本内容。
A2:支持。您可以通过循环遍历指定文件夹中的多个PDF文件,然后利用 Spire.PDF for Python 从每个文件中提取文本。
A3:虽然本教程主要讲解文本提取,Spire.PDF for Python 同样支持从 PDF 中 提取图片和 表格,满足多样化的内容处理需求。
A4:扫描版PDF文本提取需要借助OCR(光学字符识别)技术。Spire.PDF for Python 本身不内置OCR功能,但可以结合 Spire.OCR 库实现 图片转文本的精准识别。
如需完整体验 Spire.PDF for Python 的全部功能,可 该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。(30 天无功能限制)。
Spire.Office 8.9.3 已发布。在该版本中,Spire.Presentation 8.9.4 支持设置幻灯片自动切换的时间以及设置和读取渐变停止样式的透明度和亮度;Spire.PDF 9.9.9 增强了 PDF 到图像以及 OFD 到 PDF 的转换;Spire.Doc 11.9.19 增强了 Word 和 HTML 到 PDF 的转换。此外,许多已知问题也在该版本中得到修复。详情请阅读以下内容。
该版本涵盖了最新版的 Spire.Doc,Spire.PDF,Spire.XLS,Spire.Email,Spire.DocViewer, Spire.PDFViewer,Spire.Presentation,Spire.Spreadsheet, Spire.OfficeViewer, Spire.Barcode, Spire.DataExport。
版本信息如下:
https://www.e-iceblue.cn/Downloads/Spire-Office-NET.html
新功能:
Presentation ppt = new Presentation();
ppt.LoadFromFile("input.pptx");
ppt.Slides[0].SlideShowTransition.AdvanceAfterTime = 1000;
ppt.Slides[1].SlideShowTransition.SelectedAdvanceAfterTime = false;
ppt.SaveToFile("output.pptx", FileFormat.Pptx2013);
ppt.Dispose();原有的项:
FromCorner1
FromCorner2
FromCorner3
FromCorner4
新增的项:
FromTopLeftCorner
FromBottomLeftCorner
FromTopRightCorner
FromBottomRightCornerPresentation ppt = new Presentation();
ppt.LoadFromFile("input.pptx");
StringBuilder stringBuilder = new StringBuilder();
IAutoShape shape = (ppt.Slides[0].Shapes[0] as GroupShape).Shapes[2] as IAutoShape;
GradientStopCollection stops = shape.Fill.Gradient.GradientStops;
for (int i = 0; i < stops.Count; i++)
{
float transparency = stops[i].Color.Transparency;
float brightness = stops[i].Color.Brightness;
stringBuilder.AppendLine("stops" + i + "transparency: " + transparency + " brightness: " + brightness);
}
File.WriteAllText("output.txt", stringBuilder.ToString());
stops[0].Color.Transparency = 0.5f;
stops[0].Color.Brightness = -0.32f;
ppt.SaveToFile("output.pptx", FileFormat.Auto);
ppt.Dispose();问题修复:
问题修复:
问题修复:
尊敬的顾客朋友:
2023国庆节和中秋节将至,成都冰蓝科技有限公司全体职工在此向您致以最诚挚的祝福与问候!为满足节日期间的客户需求,我司就放假安排做出如下通知:
因放假给您带来的不便,我们深表歉意。
感谢您一直以来的支持与合作,祝您度过一个愉快的假期!
邮件地址:
Spire.Presentation for Python 8.9.0 已发布。本次更新新增了在将形状保存为图片时设置自定义DPI的方法。此外,该版本还修复了重置幻灯片尺寸时程序抛出“System.NullReferenceException”的问题。详情请阅读以下内容。
新功能:
presentation.Slides[0].Shapes.SaveAsImage(0,300,300);问题修复:
https://www.e-iceblue.cn/Downloads/Spire-Presentation-Python.html
Spire.Presentation 8.9.4 已发布。本次更新新增支持设置幻灯片自动切换的时间以及设置和读取渐变停止样式的透明度和亮度。同时,该版本还增强了幻灯片到图片的转换。一些已知问题也在该版本种得到修复,如获取多边形的角坐标集合不完整的问题。详情请阅读以下内容。
新功能:
Presentation ppt = new Presentation();
ppt.LoadFromFile("input.pptx");
ppt.Slides[0].SlideShowTransition.AdvanceAfterTime = 1000;
ppt.Slides[1].SlideShowTransition.SelectedAdvanceAfterTime = false;
ppt.SaveToFile("output.pptx", FileFormat.Pptx2013);
ppt.Dispose();原有的项:
FromCorner1
FromCorner2
FromCorner3
FromCorner4
新增的项:
FromTopLeftCorner
FromBottomLeftCorner
FromTopRightCorner
FromBottomRightCornerPresentation ppt = new Presentation();
ppt.LoadFromFile("input.pptx");
StringBuilder stringBuilder = new StringBuilder();
IAutoShape shape = (ppt.Slides[0].Shapes[0] as GroupShape).Shapes[2] as IAutoShape;
GradientStopCollection stops = shape.Fill.Gradient.GradientStops;
for (int i = 0; i < stops.Count; i++)
{
float transparency = stops[i].Color.Transparency;
float brightness = stops[i].Color.Brightness;
stringBuilder.AppendLine("stops" + i + "transparency: " + transparency + " brightness: " + brightness);
}
File.WriteAllText("output.txt", stringBuilder.ToString());
stops[0].Color.Transparency = 0.5f;
stops[0].Color.Brightness = -0.32f;
ppt.SaveToFile("output.pptx", FileFormat.Auto);
ppt.Dispose();问题修复:
https://www.e-iceblue.cn/Downloads/Spire-Presentation-NET.html
Excel 是一种广泛用于组织、分析和展示数据的电子表格文件。具有与 Excel 文件进行交互编程的能力是在软件应用程序中实现 Excel 功能自动化的关键。具体来说,了解如何通过代码创建新的 Excel 文档、从现有文档中检索信息以及按要求更新或修改数据将非常有帮助。本文将演示如何使用 Spire.XLS for Python 在 Python 中创建、读取或更新 Excel 文件。
本方案需要 Spire.XLS for Python 和 plum-dispatch v1.7.4。您可以通过以下 pip 命令将它轻松安装到 Windows 中。
pip install Spire.XLS果您不清楚如何安装,请参考此教程: 如何在 Windows 中安装 Spire.XLS for Python
Spire.XLS for Python 提供了各种可用于创建和编辑 Excel 文档的类和接口。下表列举了一些本文中用到的重要类、属性和方法。
| 成员 | 描述 |
| Workbook 类 | 表示 Excel 工作簿模型。 |
| Workbook.Worksheets.Add() 方法 | 添加工作表到工作簿。 |
| Workbook.SaveToFile() 方法 | 将工作簿保存为 Excel 文档。 |
| Worksheet 类 | 表示工作簿中的工作表。 |
| Worksheet.Range 属性 | 获取工作表中的特定单元格或单元格区域。 |
| Worksheet.Range.Text 属性 | 获取或设置单元格的文本值。 |
| Worksheet.Rows 属性 | 获取工作表中行的集合。 |
| CellRange 类 | 表示工作表中的单元格或单元格区域。 |
以下是使用 Spire.XLS for Python 创建一个新的 Excel 文档的步骤。
from spire.xls import *
from spire.xls.common import *
# 创建Workbook对象
wb = Workbook()
# 删除默认工作表
wb.Worksheets.Clear()
# 添加一个工作表并命名
sheet = wb.Worksheets.Add("报价")
# 合并A1至G1单元格
sheet.Range["A1:G1"].Merge()
# 在A1中写入数据并设置格式
sheet.Range["A1"].Text = "活动费用报价表"
sheet.Range["A1"].HorizontalAlignment = HorizontalAlignType.Center
sheet.Range["A1"].VerticalAlignment = VerticalAlignType.Center
sheet.Range["A1"].Style.Font.IsBold = True
sheet.Range["A1"].Style.Font.Size = 13
# 设置第一行的行高
sheet.Rows[0].RowHeight = 30
# 在特定单元格中写入数据
sheet.Range["A2"].Text = "编号"
sheet.Range["B2"].Text = "项目"
sheet.Range["C2"].Text = "规格说明"
sheet.Range["D2"].Text = "时间"
sheet.Range["E2"].Text = "数量"
sheet.Range["F2"].Text = "单价"
sheet.Range["G2"].Text = "价格"
sheet.Range["A3"].Text = "1"
sheet.Range["B3"].Text = "钢架舞台"
sheet.Range["C3"].Text = "8*4米"
sheet.Range["D3"].Text = "1场"
sheet.Range["E3"].Text = "18平米"
sheet.Range["F3"].Text = "35元/平米"
sheet.Range["G3"].Text = "630.00"
sheet.Range["A4"].Text = "2"
sheet.Range["B4"].Text = "舞台围布"
sheet.Range["C4"].Text = "20公分"
sheet.Range["D4"].Text = "1场"
sheet.Range["E4"].Text = "16米"
sheet.Range["F4"].Text = "8元/米"
sheet.Range["G4"].Text = "128.00"
sheet.Range["A5"].Text = "3"
sheet.Range["B5"].Text = "背景架"
sheet.Range["C5"].Text = "8*4米"
sheet.Range["D5"].Text = "1场"
sheet.Range["E5"].Text = "12平米"
sheet.Range["F5"].Text = "35元/平米"
sheet.Range["G5"].Text = "420.00"
sheet.Range["A6"].Text = "4"
sheet.Range["B6"].Text = "条幅"
sheet.Range["C6"].Text = "90公分宽"
sheet.Range["D6"].Text = "永久"
sheet.Range["E6"].Text = "10米"
sheet.Range["F6"].Text = "10元/米"
sheet.Range["G6"].Text = "100.00"
sheet.Range["A7"].Text = "5"
sheet.Range["B7"].Text = "地毯"
sheet.Range["C7"].Text = "全新红地毯"
sheet.Range["D7"].Text = "永久"
sheet.Range["E7"].Text = "100米(暂定)"
sheet.Range["F7"].Text = "7元/米"
sheet.Range["G7"].Text = "700.00"
# 设置指定单元格区域的行高
sheet.Range["A2:G7"].RowHeight = 15
# 设置列宽
sheet.SetColumnWidth(2, 13)
sheet.SetColumnWidth(3, 12)
sheet.SetColumnWidth(5, 14)
sheet.SetColumnWidth(6, 12)
# 设置指定单元格区域的边框样式
sheet.Range["A2:G7"].BorderAround(LineStyleType.Medium)
sheet.Range["A2:G7"].BorderInside(LineStyleType.Thin)
sheet.Range["A2:G2"].BorderAround(LineStyleType.Medium)
sheet.Range["A2:G7"].Borders.KnownColor = ExcelColors.Black
# 保存为 .xlsx 文件
wb.SaveToFile("创建Excel文档.xlsx", FileFormat.Version2016)

Worksheet.Range.Value 属性能以字符串形式返回单元格中的数字值或文本值。要获取整个 Excel 工作表或某个单元格区域中的数据,可循环遍历其中的单元格。以下是使用 Spire.XLS for Python 读取 Excel 工作表中数据的步骤。
from spire.xls import *
from spire.xls.common import *
# 创建Workbook对象
wb = Workbook()
# 加载Excel文档
wb.LoadFromFile("创建Excel文档.xlsx");
# 获取第一张工作表
sheet = wb.Worksheets[0]
# 获取包含数据的单元格区域
locatedRange = sheet.AllocatedRange
# 遍历各行
for i in range(len(sheet.Rows)):
# 遍历各列
for j in range(len(locatedRange.Rows[i].Columns)):
# 获取指定单元格的数据
print(locatedRange[i + 1, j + 1].Value + " ", end='')
print("")

要更改某个单元格的值,只需通过 Worksheet.Range.Value 属性为其重新赋值即可。具体步骤如下。
from spire.xls import *
from spire.xls.common import *
# 创建Workbook对象
wb = Workbook()
# 加载Excel文档
wb.LoadFromFile("创建Excel文档.xlsx");
# 获取第一张工作表
sheet = wb.Worksheets[0]
# 更改指定单元格的值
sheet.Range["A1"].Value = "修改数据"
# 保存结果文件
wb.SaveToFile("更新Excel.xlsx", ExcelVersion.Version2016)

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。