如何基于python把文字圖片寫入word文檔
安裝代碼
pip install python-docx
1.批量化往word文件中添加大批量重復(fù)的數(shù)據(jù)
from docx import Document
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.shared import Pt #磅數(shù)
from docx.oxml.ns import qn #中文格式
#以上是docx庫中需要用到的部分
import time
price = input('請輸入今日價(jià)格:')
company_list = ['客戶1','客戶2','客戶3','客戶4','客戶5','客戶6']
today1 = time.strftime("%Y-%m-%d",time.localtime())
today2 = time.strftime("%Y/%m/%d",time.localtime())
today = time.strftime("%Y{y}%m{m}%dpkma1az",time.localtime()).format(y='年',m='月',d='日')
for i in company_list:
document = Document()
#設(shè)置文檔的基礎(chǔ)字體中文
document.styles['Normal'].font.name = u'宋體'
#設(shè)置文檔的基礎(chǔ)字體西文
document.styles['Normal'].element.rPr.rFonts.set(qn('w:eastAsia'),u'宋體')
# 初始化建立第一個(gè)自然段
pl = document.add_paragraph()
#對齊方式為居中,沒有這句話默認(rèn)左對齊
pl.alignment = WD_ALIGN_PARAGRAPH.CENTER
run1 = pl.add_run('關(guān)于下達(dá)%s產(chǎn)品價(jià)格的通知'%(today))
run1.font.name = '微軟雅黑'
run1.element.rPr.rFonts.set(qn('w:eastAsia'),u'微軟雅黑')
run1.font.size = Pt(21)
#是否加粗
run1.font.bold = True
#前后距離5磅
pl.space_before = Pt(5)
pl.space_after = Pt(5)
# 初始化建立第二個(gè)自然段
p2 = document.add_paragraph()
run2 = p2.add_run(i+":")
#對客戶的稱呼
run2.font.name = '仿宋_GB2312'
run2.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')
run2.font.size = Pt(16)
# 是否加粗
run2.font.bold = True
# 初始化建立第三個(gè)自然段
p3 = document.add_paragraph()
run3 = p3.add_run(" 根據(jù)公司安排,為提供優(yōu)質(zhì)客戶服務(wù),我單位擬定了今日黃金價(jià)格為%s元,特此通知."%price)
# 對客戶的稱呼
run3.font.name = '仿宋_GB2312'
run3.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')
run3.font.size = Pt(16)
# 是否加粗
run3.font.bold = True
# 初始化建立第四個(gè)自然段
p4 = document.add_paragraph()
# 對齊方式為居中,沒有這句話默認(rèn)左對齊
p4.alignment = WD_ALIGN_PARAGRAPH.CENTER
run4 = p4.add_run("( 聯(lián)系人:小楊 電話:18888888888)")
# 對客戶的稱呼
run4.font.name = '仿宋_GB2312'
run4.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')
run4.font.size = Pt(16)
# 是否加粗
run4.font.bold = True
document.save('%s-價(jià)格通知.docx'% i)
2.添加圖片
from docx import Document
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.shared import Pt #磅數(shù)
from docx.oxml.ns import qn #中文格式
from docx.shared import Inches #圖片尺寸
#以上是docx庫中需要用到的部分
import time
price = input('請輸入今日價(jià)格:')
company_list = ['客戶1','客戶2','客戶3','客戶4','客戶5','客戶6']
today = time.strftime("%Y{y}%m{m}%dho6duis",time.localtime()).format(y='年',m='月',d='日')
for i in company_list:
document = Document()
# 設(shè)置文檔的基礎(chǔ)字體中文
document.styles['Normal'].font.name = u'宋體'
# 設(shè)置文檔的基礎(chǔ)樣式
document.styles['Normal'].element.rPr.rFonts.set(qn('w:eastAsia'), u'宋體')
document.add_picture('banner.jpg',width=Inches(6))
# 初始化建立第一個(gè)自然段
pl = document.add_paragraph()
# 對齊方式為居中,沒有這句話默認(rèn)左對齊
pl.alignment = WD_ALIGN_PARAGRAPH.CENTER
run1 = pl.add_run('關(guān)于下達(dá)%s產(chǎn)品價(jià)格的通知' % (today))
run1.font.name = '微軟雅黑'
run1.element.rPr.rFonts.set(qn('w:eastAsia'), u'微軟雅黑')
run1.font.size = Pt(21)
# 是否加粗
run1.font.bold = True
# 前后距離5磅
pl.space_before = Pt(5)
pl.space_after = Pt(5)
# 初始化建立第二個(gè)自然段
p2 = document.add_paragraph()
run2 = p2.add_run(i + ":")
# 對客戶的稱呼
run2.font.name = '仿宋_GB2312'
run2.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')
run2.font.size = Pt(16)
# 是否加粗
run2.font.bold = True
# 初始化建立第三個(gè)自然段
p3 = document.add_paragraph()
run3 = p3.add_run(" 根據(jù)公司安排,為提供優(yōu)質(zhì)客戶服務(wù),我單位擬定了今日黃金價(jià)格為%s元,特此通知." % price)
# 對客戶的稱呼
run3.font.name = '仿宋_GB2312'
run3.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')
run3.font.size = Pt(16)
# 是否加粗
run3.font.bold = True
table = document.add_table(rows=3,cols=3,style='Table Grid')
table.cell(0,0).merge(table.cell(0,2))
table_run1 = table.cell(0,0).paragraphs[0].add_run('xx產(chǎn)品報(bào)價(jià)表')
table_run1.font.name = u'隸書'
table_run1.element.rPr.rFonts.set(qn('w:eastAsia'),u'隸書')
table.cell(1,0).text = '日期'
table.cell(1, 1).text = '價(jià)格'
table.cell(1, 2).text = '備注'
table.cell(2, 0).text = today
table.cell(2, 1).text = str(price)
table.cell(2, 2).text = ''
# 初始化建立第四個(gè)自然段
p4 = document.add_paragraph()
# 對齊方式為居中,沒有這句話默認(rèn)左對齊
p4.alignment = WD_ALIGN_PARAGRAPH.CENTER
run4 = p4.add_run(" (聯(lián)系人:小楊 電話:18888888888)")
# 對客戶的稱呼
run4.font.name = '仿宋_GB2312'
run4.element.rPr.rFonts.set(qn('w:eastAsia'), u'仿宋_GB2312')
run4.font.size = Pt(16)
# 是否加粗
run4.font.bold = True
#插入分頁符
document.add_page_break()
p5 = document.add_paragraph()
run4 = p5.add_run('此處是廣告')
document.save('%s-價(jià)格通知.docx' % i)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python讀取word文檔的方法
- python-docx修改已存在的Word文檔的表格的字體格式方法
- 使用python批量讀取word文檔并整理關(guān)鍵信息到excel表格的實(shí)例
- 利用python程序生成word和PDF文檔的方法
- python解析html提取數(shù)據(jù),并生成word文檔實(shí)例解析
- python實(shí)現(xiàn)的生成word文檔功能示例
- python讀取word文檔,插入mysql數(shù)據(jù)庫的示例代碼
- python實(shí)現(xiàn)word 2007文檔轉(zhuǎn)換為pdf文件
- 使用Python 自動(dòng)生成 Word 文檔的教程
- Python操作word文檔插入圖片和表格的實(shí)例演示
相關(guān)文章
python調(diào)用接口的4種方式代碼實(shí)例
這篇文章主要介紹了python調(diào)用接口的4種方式代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11
Selenium獲取登錄Cookies并添加Cookies自動(dòng)登錄的方法
這篇文章主要介紹了Selenium獲取登錄Cookies并添加Cookies自動(dòng)登錄的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
python pandas消除空值和空格以及 Nan數(shù)據(jù)替換方法
今天小編就為大家分享一篇python pandas消除空值和空格以及 Nan數(shù)據(jù)替換方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10
完美處理python與anaconda環(huán)境變量的沖突問題
這篇文章主要介紹了完美處理Python與anaconda環(huán)境變量的沖突問題,對anaconda感興趣的同學(xué),可以參考下2021-04-04
Python安裝jupyter notebook報(bào)pywinpty缺少Rust和Cargo問題
文章介紹了在安裝pip install jupyter時(shí)遇到的錯(cuò)誤,并分析了原因,錯(cuò)誤是由于缺少Rust和Cargo編譯擴(kuò)展,作者通過訪問rustup.rs下載并安裝Rust,并確保將Rust添加到系統(tǒng)路徑中,重啟電腦后成功解決了問題2025-02-02
Python ''takes exactly 1 argument (2 given)'' Python error
這篇文章主要介紹了Python 'takes exactly 1 argument (2 given)' Python error的相關(guān)資料,需要的朋友可以參考下2016-12-12
python 進(jìn)程池的兩種不同實(shí)現(xiàn)方法示例
這篇文章主要為大家介紹了python 進(jìn)程池的兩種不同實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05

