第十天-自动化办公-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 分钟前
布谷直播源码部署服务器关于数据库配置的详细说明
运维·服务器·数据库·直播系统源码·直播源码·直播系统搭建·直播软件开发
One_Blanks8 分钟前
渗透测试-Linux基础(1)
linux·运维·安全
爱吃喵的鲤鱼12 分钟前
linux进程的状态之环境变量
linux·运维·服务器·开发语言·c++
dessler24 分钟前
Linux系统-ubuntu系统安装
linux·运维·云计算
向阳121831 分钟前
Dubbo负载均衡
java·运维·负载均衡·dubbo
yyfhq42 分钟前
sdnet
python
测试19981 小时前
2024软件测试面试热点问题
自动化测试·软件测试·python·测试工具·面试·职场和发展·压力测试
love_and_hope1 小时前
Pytorch学习--神经网络--搭建小实战(手撕CIFAR 10 model structure)和 Sequential 的使用
人工智能·pytorch·python·深度学习·学习
荒Huang1 小时前
Linux挖矿病毒(kswapd0进程使cpu爆满)
linux·运维·服务器
海阔天空_20131 小时前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化