案例介紹
WPS中word模塊與微軟的word模塊類似,是用來向用戶提供一系列操作Windows控件的SDK,讓用戶通過簡單的參數和方法調用來實現一些復雜的操作。要使用word模塊,需要使用rpa.app.wps.word
進行操作。
案例實現
案例一
1.案例相關SDK
create新建/save保存
def start():
#新建word文檔
doc = rpa.app.wps.word.create(visible = True)
#保存
doc.save(file = r'xxxxxxxx')
open打開/close關閉word操作
def start():
#打開word
doc = rpa.app.wps.word.open(file = r'xxxxx.docx',visible = False)
#關閉word
doc.close()
write寫入/read讀取word操作
def start():
#新建word文檔
doc = rpa.app.wps.word.create(visible = True)
#寫入內容
doc.write('Hello world!',size=10,family='宋體',color=1)
#讀取內容
txt=doc.read()
#打印內容
print(txt)
#保存
doc.save(file = r'xxxxxxxx')
#color 對照表
# wdByAuthor = -1,
# wdAuto = 0,
# wdNoHighlight = 0,
# wdBlack = 1,
# wdBlue = 2,
# wdTurquoise = 3,
# wdBrightGreen = 4,
# wdPink = 5,
# wdRed = 6,
# wdYellow = 7,
# wdWhite = 8,
# wdDarkBlue = 9,
# wdTeal = 10, // 0x0000000A
# wdGreen = 11, // 0x0000000B
# wdViolet = 12, // 0x0000000C
# wdDarkRed = 13, // 0x0000000D
# wdDarkYellow = 14, // 0x0000000E
# wdGray50 = 15, // 0x0000000F
# wdGray25 = 16, // 0x00000010
search搜索
def start():
#新建word文檔
doc = rpa.app.wps.word.create(visible = True)
#寫入內容
doc.write('Hello world!',size=10,family='宋體',color=1)
#從頭開始搜索第二個'o'
doc.search(key='o',from_pos='start',index=2,relative='left')
#保存
doc.save(file = r'xxxxxxxx')
replace替換
def start():
#新建word文檔
doc = rpa.app.wps.word.create(visible = True)
#寫入內容
doc.write('Hello world!',size=10,family='宋體',color=1)
#將'!'替換成'!!!'
doc.replace(key='!',replacement='!!!')
#保存
doc.save(file = r'xxxxxxxx')
cursor_move移動光標
def start():
#新建word文檔
doc = rpa.app.wps.word.create(visible = True)
#寫入內容
doc.write('Hello world!',size=10,family='宋體',color=1)
#將光標向左移動一個字符
doc.cursor_move(step_count=1,direction='left')
#在光標處寫入'?'
doc.write('?',size=10,family='宋體',color=1)
#保存
doc.save(file = r'xxxxxxxx')
2.流程步驟
案例運行視頻:wps
案例操作步驟依次為:
第一步:從WPS中新建一個Word文檔
第二步:向word文檔中寫入"Hello world!"
第三步:搜索光標為 "!" 的字符串,并在其左側寫入 "后面是個感嘆號:"
第四步:將 "!" 替換成 "!!!"
第五步:光標向左移動一個字符距離
第六步:讀取word中的內容,并打印輸出到日志中顯示
3.案例中源代碼分享
from rpa.core import *
from rpa.utils import *
import rpa4 as rpa # 使用V3引擎
def start():
# 在此處開始編寫您的應用
word = rpa.app.wps.word.create(visible=True)
# 新建word
sleep(2)
word.write('Hello world!',size=10,family='宋體',color=1)
# 寫入Hello world!
sleep(2)
word.search(key='!',from_pos='start',index=1,relative='left')
# 搜索 !
sleep(2)
word.write('后面是個感嘆號:',size=10,family='宋體',color=1)
sleep(2)
word.replace(key='!',replacement='!!!')
# 將 ! 替換成 !!!
sleep(2)
word.cursor_move(step_count=1,direction='left')
#移動光標
sleep(2)
word.write('?',size=10,family='宋體',color=1)
sleep(2)
# 讀取內容
txt=word.read()
sleep(2)
# 打印內容
print("讀取到wps文檔的內容為:{}".format(txt))
案例二
1.案例相關SDK
get_table獲取表格
def start():
#打開word文檔
doc=rpa.app.wps.word.open(file = r'xxxxx.docx',visible = True)
#獲取文檔中第一張表格
tab1=doc.get_table(1)
#關閉文檔
doc.close()
row_count獲取表格行數/col_count獲取表格列數
def start():
#打開word文檔
doc=rpa.app.wps.word.open(file = r'xxxxx.docx',visible = True)
#獲取文檔中第一張表格
tab1=doc.get_table(1)
#獲取表格行數
rows=tab1.row_count()
#獲取表格列數
cols=tab1.col_count()
#打印行/列數
print('行數為:'+str(rows)+'列數為:'+str(cols))
#關閉文檔
doc.close()
read讀取表格內容/write寫入表格內容
def start():
#打開word文檔
doc=rpa.app.wps.word.create(file = r'xxxxx.docx',visible = True)
#獲取文檔中第一張表格
tab1=doc.get_table(1)
#獲取表格第一行第一列內容
txt=tab1.read(row=1,col=1)
#將獲取到的內容寫入到第四行第三列
tab1.write(row=4,col=3,text=txt,size=10,family='宋體',color=2)
#關閉文檔
doc.close()
#color 對照表
# wdByAuthor = -1,
# wdAuto = 0,
# wdNoHighlight = 0,
# wdBlack = 1,
# wdBlue = 2,
# wdTurquoise = 3,
# wdBrightGreen = 4,
# wdPink = 5,
# wdRed = 6,
# wdYellow = 7,
# wdWhite = 8,
# wdDarkBlue = 9,
# wdTeal = 10, // 0x0000000A
# wdGreen = 11, // 0x0000000B
# wdViolet = 12, // 0x0000000C
# wdDarkRed = 13, // 0x0000000D
# wdDarkYellow = 14, // 0x0000000E
# wdGray50 = 15, // 0x0000000F
# wdGray25 = 16, // 0x00000010
add_row新增表格行/add_col新增表格列
def start():
#打開word文檔
doc=rpa.app.wps.word.open(file = r'xxxxx.docx',visible = True)
#獲取文檔中第一張表格
tab1=doc.get_table(1)
#新增一行
tab1.add_row()
#新增一列
tab1.add_col()
#關閉文檔
doc.close()
add_picture插入圖片
def start():
#打開word文檔
doc=rrpa.app.wps.word.open(file = r'xxxxx.docx',visible = True)
#在文檔中第一張圖片-會插入在光標處
doc.add_picture(file=r'xxxx.jpg')
#關閉文檔
doc.close()
to_pdf轉換成PDF
def start():
#打開word文檔
doc=rpa.app.wps.word.open(file = r'xxxxx.docx',visible = True)
#將word轉換成PDF
doc.to_pdf(file=r'xxxx.pdf')
#關閉文檔
doc.close()
2.流程步驟
案例操作附件:測試應用.docx案例運行視頻:rpa操作表格示例.mov
案例操作步驟依次為:
第一步:從WPS中打開測試文檔:word操作表格.docx
第二步:獲取表格對象
第三步:分別向文檔對象內第一行,第二行,第三行,輸入內容分別是:“RPA輸入第一行”、“RPA輸入第二行”、“RPA輸入第三行”
第四步:讀取指定行列的內容
第五步:獲取表格行數、列數
第六步:增加一行、一列,然后保存
3.案例中源代碼分享
from rpa.core import *
from rpa.utils import *
import rpa4 as rpa # 使用V3引擎
def start():
# 打開一個有表格的word
wd = rpa.app.wps.word.open(r"\\Mac\Home\Desktop\測試應用.docx",visible=True)
# 根據索引獲取表格
tb = wd.get_table(0)
# 寫入指定 行 列 內容
tb.write(1, 1, "RPA輸入第一行")
sleep(1)
tb.write(2, 1, "RPA輸入第二行")
sleep(1)
tb.write(3, 1, "RPA輸入第三行")
# 讀取指定行列的內容
data = tb.read(1,1)
# 獲取表格行數
m_row = tb.row_count()
# 獲取表格列數
m_col = tb.col_count()
# 增加一行
tb.add_row()
# 增加一列
tb.add_col()
wd.save()
文檔內容是否對您有幫助?