999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Python的辦公自動化應(yīng)用

2024-01-03 08:42:12周洪斌苗盼盼
現(xiàn)代計算機 2023年21期
關(guān)鍵詞:辦公自動化

周洪斌,苗盼盼

(沙洲職業(yè)工學(xué)院數(shù)字化與微電子學(xué)院,張家港 215600)

0 引言

Python 程序設(shè)計語言具備語法簡潔、靈活高效、類庫豐富等優(yōu)點,在網(wǎng)絡(luò)爬蟲[1]、數(shù)據(jù)分析、人工智能、辦公自動化、Web 自動化測試[2]等方面得到了廣泛運用。辦公自動化是眾多企事業(yè)單位每天面臨的重要工作,當(dāng)面臨多個文檔、電子表格需要處理時,采用傳統(tǒng)的單個文檔一一處理的方式不僅枯燥乏味、耗時費力,而且容易出錯,采用Python 實現(xiàn)辦公自動化,實現(xiàn)文檔、電子表格的批量處理,可以有效提高辦公效率。Python 語言提供了豐富的類庫支持Word 文檔、Excel 表格的自動化處理[3]以及電子郵件的自動收發(fā)。

1 Python辦公自動化基礎(chǔ)

1.1 操作Word文件

Win32com 是Python 操作Word 文件的常用組件,只要計算機已安裝Microsoft Office 軟件,Python 就可以通過內(nèi)置的Win32com 組件對Microsoft Office文件進行存取。

(1)創(chuàng)建Word應(yīng)用程序變量

from win32com.client import Dispatch

word=Dispatch(“Word.Application”)

word.Visible=0

word.DisplayAlerts=0

Word 應(yīng)用程序變量的Visible 屬性表示是否顯示W(wǎng)ord 界面,0 表示不顯示;DisplayAlerts 屬性表示是否顯示W(wǎng)ord警告信息,0表示不顯示。

(2)新建文檔并寫入內(nèi)容

doc=word.Documents.Add()

range=doc.Range(0,0)

range.InsertAfter(“Python寫入”)

Word 應(yīng)用程序變量的Documents.Add 方法用于新建一個文件,Range方法用于設(shè)置文件位置,InsertAfter方法表示在該位置后面寫入內(nèi)容。

(3)保存、關(guān)閉文件并退出Word應(yīng)用程序

doc.SaveAs(“D:\py.docx”)

doc.Close()

word.Quit()

自動操作文件完成后退出Word 應(yīng)用程序,以免占用系統(tǒng)資源。

1.2 讀寫Excel文件

Pandas 是Python 廣泛使用的數(shù)據(jù)分析庫,可以用于讀寫Excel 表格、CSV 等格式的數(shù)據(jù)文件[4]。Pandas庫主要提供了Series、DataFrame兩種類型的數(shù)據(jù)對象用于存儲及分析數(shù)據(jù)。Series用于存儲一行或一列的數(shù)據(jù),可以理解為Excel表格中的一列數(shù)據(jù);DataFrame 用于存儲多行和多列的數(shù)據(jù)集合,可以理解為Excel 的表格。通過Pandas讀寫Excel文件的基本步驟如下:

(1)通過pandas 提供的read_excel 方法讀取Excel文件

import pandas as pd

data=pd.read_excel(“員工信息.xlsx”)

上面的data 變量即為DataFrame 類型的變量。

(2)通過列名訪問數(shù)據(jù)列

from datetime import datetime

#計算工齡

data[“工齡(年)”]=datetime.now().year-data

[“入職時間”].dt.year

(3)通過to_excel方法寫數(shù)據(jù)到Excel文件中

data.to_excel(“員工工齡.xlsx”)

1.3 Python發(fā)送郵件

SMTP 是發(fā)送郵件的協(xié)議,Python 通過內(nèi)置的smtplib和email兩個模塊提供對SMTP的支持,smtplib 負責(zé)發(fā)送郵件,email 負責(zé)構(gòu)造郵件。使用Python發(fā)送郵件的主要代碼如下:

(1)導(dǎo)入需要的smtplib和email模塊

import smtplib

import email.mime.multipart

import email.mime.text

(2)給出發(fā)件人郵箱、授權(quán)碼及收件人郵箱

#發(fā)件人郵箱

sendAddr=‘szitzhb@qq.com’

#發(fā)件人授權(quán)碼

password=‘wheqqckqwysxugha’

#收件人郵箱

recipientAddrs=‘itfans@163.com’

(3)通過email 模塊的MIMEMultipart 對象構(gòu)造郵件內(nèi)容,包括發(fā)件人、收件人、郵件主題及正文

#構(gòu)造郵件內(nèi)容

msg=email.mime.multipart.MIMEMultipart()

msg[‘from’]=sendAddr

msg[‘to’]=recipientAddrs

#郵件主題

msg[‘subject’]=‘Python發(fā)送郵件’

#郵件正文

txt=email.mime.text.MIMEText(‘這是一封來自

Python的郵件。’,‘plain’,‘utf-8’)

msg.attach(txt)

(4)建立與服務(wù)器的連接并發(fā)送郵件

#建立SMTP_SSL連接

smtp=smtplib.SMTP_SSL(‘smtp.qq.com’,465)

#登錄郵箱

smtp.login(sendAddr,password)

#發(fā)送郵件

smtp.sendmail(sendAddr,recipientAddrs,str(msg))

smtp.quit()

2 綜合應(yīng)用

企業(yè)人力資源部門給新員工發(fā)送PDF 格式的錄用通知書通知其辦理入職手續(xù),是人力資源部門的一項常規(guī)工作。如果錄用的新員工人數(shù)較多,則是一項費時費力的工作。我們可以通過Python 實現(xiàn)PDF 格式錄用通知書的批量產(chǎn)生并自動發(fā)送電子郵件,具體過程如圖1所示。

圖1 批量產(chǎn)生錄用通知書并發(fā)送郵件過程

2.1 制作新員工錄用通知書模板

制作如圖2 所示的錄用通知書Word 模板,{{name}}、{{gender}}、{{department}}以及{{position}}表示占位符,是需要填充的內(nèi)容,并可以根據(jù)需要設(shè)置好格式。

圖2 新員工錄用通知書模板

2.2 讀取新員工錄用名單

通過Pandas 從圖3 所示的員工錄用Excel 名單中讀取錄用信息。

圖3 新員工錄用名單

主要代碼如下:

#導(dǎo)入pandas

import pandas as pd

#讀取excel文件

emps=pd.read_excel(‘錄用名單.xlsx’)

#依次獲得各列的值,即新員工姓名、

性別、入職部門、崗位以及郵箱

name=emps[“姓名”].str.rstrip()

#將性別男、女轉(zhuǎn)換成先生、女生

gender=emps[‘性別’].str.rstrip().map(dict(zip

([‘男’,‘女’],[‘先生’,‘女士’])))

department=emps[‘入職部門’].str.rstrip()

position=emps[‘入職崗位’].str.rstrip()

email=emps[‘郵箱’].str.rstrip()

2.3 根據(jù)模板批量生成錄用通知書

使用DocxTemplate 可以根據(jù)模板批量生成錄用通知書,主要步驟如下:

(1)安裝并導(dǎo)入DocxTemplate

pip install docxtpl

from docxtpl import DocxTemplate

(2)使用2.2 節(jié)讀取的新員工錄用名單填充模板

num=emps.shape[0]

for i in range(num):

context={

“name”:name[i],

“gender”:gender[i],

“department”:department[i],

“position”:position[i]

tpl=DocxTemplate(‘錄用通知書模板.docx’)

#通過DocxTemplate的render方法渲染模板

tpl.render(context)

#生成每個新員工的錄用通知書

tpl.save(file_path+r“{}的錄用通知書.docx”.format

(name[i]))

生成的錄用通知書效果如圖4所示。

圖4 生成的新員工錄用通知書

2.4 生成PDF格式的錄用通知書

可以通過Win32com 組件把上一步生成的Word 格式的錄用通知書自動轉(zhuǎn)換成PDF 格式。主要代碼如下:

doc=word.Documents.Open(fileName)

#下面的2行代碼用于把文件擴展名改為pdf

index=fileName.find(“.”)

pdfFile=fileName[0:index]+“.pdf”

#存為PDF格式,17代表PDF格式

doc.SaveAs(pdfFile,17)

doc.Close()

2.5 自動發(fā)送電子郵件

使用Python 自動發(fā)送電子郵件,并把上一步生成的PDF 格式的錄用通知書作為附件發(fā)送。添加附件的主要代碼如下:

msg=email.mime.multipart.MIMEMultipart()

part=MIMEApplication(open(attachName,‘rb’).read())

part.add_header(‘Content-Disposition’,‘a(chǎn)ttachment’,

filename=attachName)

msg.attach(part)

3 結(jié)語

Python語言為辦公自動化提供了Win32com、Pandas、DocxTemplate、smtplib 等豐富的類庫,可以實現(xiàn)Word、Excel文檔以及郵件處理的自動化,擺脫機械性和重復(fù)性的煩瑣事務(wù),降低企事業(yè)單位用工成本,提高工作“含金量”,實現(xiàn)企事業(yè)單位的自動化、高效化、智能化辦公。

猜你喜歡
辦公自動化
企事業(yè)單位辦公自動化的應(yīng)用與發(fā)展探析
淺談辦公自動化系統(tǒng)的設(shè)計與應(yīng)用
活力(2019年21期)2019-04-01 12:17:06
辦公自動化中的計算機應(yīng)用
計算機信息處理技術(shù)在辦公自動化中的應(yīng)用研究
探討辦公自動化發(fā)展方向
辦公自動化系統(tǒng)軟件教學(xué)探索
辦公室自動化、辦公自動化與OA
企業(yè)辦公自動化的現(xiàn)狀及發(fā)展策略分析
滬蘇浙高速公路辦公自動化系統(tǒng)設(shè)計
利用辦公自動化進行圖書館管理
河南科技(2014年22期)2014-02-27 14:18:25
主站蜘蛛池模板: 精品色综合| 国产高清在线观看| 国产69精品久久久久孕妇大杂乱| 老熟妇喷水一区二区三区| 中文无码毛片又爽又刺激| 久久精品人人做人人综合试看| 精品人妻AV区| 国产一级毛片yw| 激情爆乳一区二区| 国产欧美精品一区二区| 伊人久久婷婷五月综合97色| 欧美伊人色综合久久天天| 91久久天天躁狠狠躁夜夜| 97国内精品久久久久不卡| 美女一级毛片无遮挡内谢| 97精品国产高清久久久久蜜芽| 波多野结衣国产精品| 亚洲中文字幕97久久精品少妇| 亚洲AV一二三区无码AV蜜桃| 国产屁屁影院| 自拍欧美亚洲| 国产在线小视频| 国产成人综合亚洲欧洲色就色| 国产极品美女在线| 国产精品永久久久久| 72种姿势欧美久久久大黄蕉| 免费看的一级毛片| 久久综合色88| 98精品全国免费观看视频| 一级香蕉人体视频| 欧美亚洲国产日韩电影在线| 92午夜福利影院一区二区三区| 国产97色在线| 精品自窥自偷在线看| 亚洲人精品亚洲人成在线| 亚洲午夜福利在线| 国产成人精彩在线视频50| 日韩最新中文字幕| 亚洲AV无码乱码在线观看代蜜桃| 91日本在线观看亚洲精品| 成人精品亚洲| 91免费观看视频| 欧美亚洲激情| 欧美国产在线看| 欧美亚洲日韩中文| 色呦呦手机在线精品| 国产成人综合久久精品下载| 欧美精品成人一区二区视频一| 激情无码字幕综合| 99热这里只有免费国产精品 | 一区二区影院| 国产精品免费入口视频| 亚洲综合极品香蕉久久网| 中文国产成人精品久久| 91娇喘视频| 亚洲国产精品日韩专区AV| 国产毛片基地| 国产喷水视频| 热九九精品| 亚洲视频影院| 国产一区二区影院| 亚洲视频影院| 亚洲日本韩在线观看| 欧美日韩国产一级| 久久a级片| 国产综合在线观看视频| 无码日韩人妻精品久久蜜桃| 国产精品高清国产三级囯产AV| 小说 亚洲 无码 精品| 中文字幕乱码中文乱码51精品| 3344在线观看无码| 亚洲欧美一区二区三区蜜芽| 久久久噜噜噜| 午夜福利视频一区| 亚洲日本在线免费观看| 人妻一区二区三区无码精品一区| 国产精品黑色丝袜的老师| 2020最新国产精品视频| 久操线在视频在线观看| 成年av福利永久免费观看| 国产精品美女网站| 中文无码伦av中文字幕|