第十天-自动化办公-word操作

python-docx:操作word

读取word

  1. 安装:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple python-docx

  1. 使用:

import docx

3.使用document获取对象

注意只支持.docx 格式 不支持doc

from docx import Document

#返回word对象

documnet_obj=Document(word地址)

  1. 段落的读取

#通过循环每个段落的对象,并调用text

for p in documnet_obj.paragraphs:

print(p.text)

5.表格内容的读取

#通过循环获取行列的内容,每个表格字段字符串

for t in documnet_obj.tables:

for row in t.rows:

for cell in row.cells:

print(cell.text)

#根据列读取

for t in documnet_obj.tables:

for col in t.columns:

for cell in col.cells:

print(cell.text)

创建word

  1. 生成标题

document_obj=Document()

#标题样式等级0-9

titleobj=document_obj.add_heading(标题内容,标题样式等级)

#内容追加

titleobj.add_run(字符串)

#保存文档

document_obj.save("xx.docx")

2.保存文档

document_obj=Document()

document_obj.save("xx.docx")

3.添加段落

paraobj=document_obj.add_paragraph("段落内容")

#内容追加

paraobj.add_run("字符串内容")

#可以使用\n来进行换行

4.添加图片

#宽高的定义

from docx.shared import Inches

image_obj=document_obj.add_picture("图片地址",宽,高)

image_obj=document_obj.add_picture("图片地址",width=Inches(5),height=Inches(5))

5.添加表格:add_table

6.分页 add_page_break()

  1. 设置全局样式 document_obj.styles['Noemal']
  • 查看所有样式
  • 设置全局样式
  • 文本样式
  • 图片样式
  • 表格样式

生成pdf

  1. pdf工具包:pdfkit

https://wkhtmltopdf.org/downloads.html中可以下载不同系统的模块

2.html转pdf

3.网址转pdf

4.字符串生成pdf

5.word转html

  1. demo
复制代码
# coding:utf-8

import pdfkit
from pydocx import PyDocX

#html转pdf

#注意需要先按装依赖在:https://wkhtmltopdf.org/downloads.html下载
path_to_wkhtmltopdf = r'C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'

config = pdfkit.configuration(wkhtmltopdf=path_to_wkhtmltopdf)
#html文件转pdf
#pdfkit.from_file("你好.html","你好1.pdf",configuration=config)

#网址转pdf
#pdfkit.from_url("https://www.imooc.com","慕课网.pdf",configuration=config)

html="""
<html>
<head>
<meta charset="utf-8"/>
</head>
<body>
<h1>你好</h1>
</body>
</html>
"""
#html字符串转pdf
#pdfkit.from_string(html,"你好.pdf",configuration=config)

#word转pdf 先将word转为html
html_word=PyDocX.to_html("测试.docx")
pdfkit.from_string(html_word,"测试.pdf",configuration=config)
相关推荐
思则变7 分钟前
[Pytest] [Part 2]增加 log功能
开发语言·python·pytest
无敌暴龙兽z17 分钟前
离线环境安装elk及设置密码认证
运维·elk
漫谈网络36 分钟前
WebSocket 在前后端的完整使用流程
javascript·python·websocket
好奇的菜鸟40 分钟前
如何在 Ubuntu 24.04 (Noble) 上使用阿里源
linux·运维·ubuntu
bcbobo21cn1 小时前
初步了解Linux etc/profile文件
linux·运维·服务器·shell·profile
wayuncn1 小时前
月付物理服务器租用平台-青蛙云
运维·服务器·服务器租用·服务器托管·物理机租用
望获linux1 小时前
【实时Linux实战系列】CPU 隔离与屏蔽技术
java·linux·运维·服务器·操作系统·开源软件·嵌入式软件
0wioiw02 小时前
C#基础(项目结构和编译运行)
linux·运维·服务器
try2find2 小时前
安装llama-cpp-python踩坑记
开发语言·python·llama
2401_873587823 小时前
Linux常见指令以及权限理解
linux·运维·服务器