欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實(shí)現(xiàn)自動(dòng)化辦公郵件合并功能

 更新時(shí)間:2021年07月08日 11:39:43   作者:穆穆Max  
這篇文章主要介紹了python實(shí)現(xiàn)自動(dòng)化辦公郵件合并功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

經(jīng)常使用word辦公的小伙伴們經(jīng)常會(huì)遇到郵件合并的任務(wù),通常會(huì)將數(shù)量有限的表格中的信息通過(guò)word的郵件合并功能,自動(dòng)生成word文檔,操作熟練的技術(shù)員通常不到十分鐘就可以合并幾十份郵件。那么如果遇到成千上萬(wàn)份的郵件需要合并并且需要各自生成文件呢?一個(gè)excel大佬也需要很長(zhǎng)時(shí)間吧!既然我們很難在excel上追上大佬的腳步,何不另辟蹊徑,找一條更適合自己的方法呢?
我是一年多前接觸到python自動(dòng)化辦公的,通過(guò)進(jìn)一步的學(xué)習(xí),發(fā)現(xiàn)平時(shí)我們的辦公效率可以通過(guò)使用python的自動(dòng)化辦公方法從而進(jìn)一步提升,而且這種提升是很容易就可以實(shí)現(xiàn)的。如果你花了不到一個(gè)月的時(shí)間學(xué)習(xí)了簡(jiǎn)單的自動(dòng)化辦公技巧,那么我可以想象得到,某一天會(huì)真實(shí)發(fā)生的一種情景:在公司做報(bào)表的那一天,其他同事都在慌里慌張的敲打著鍵盤,到了下班點(diǎn)之后,他們不僅沒(méi)有回家感受家的溫暖,還要遭受老板的冷眼,任務(wù)沒(méi)有完成是不能回家的,即使有多晚。那么這個(gè)時(shí)候,你早已經(jīng)保質(zhì)保量的完成了所有任務(wù),在其它同事手忙腳亂的時(shí)候,你在悠閑的喝著咖啡,沐浴在領(lǐng)導(dǎo)今天對(duì)你的贊美之中,默默感嘆,生活如此多嬌,下班后去干嘛呢?,
下面隨我一起走進(jìn)python自動(dòng)化辦公的第一站:郵件合并。
如果word模板文件長(zhǎng)這個(gè)樣子(為了演示自動(dòng)化辦公效果,邀請(qǐng)函是隨意寫的):

邀請(qǐng)函

當(dāng)然,對(duì)于到進(jìn)行郵件合并的位置,我們同樣和word郵件合并一樣,需要添加域。
邀請(qǐng)函有了,那么表格哪里找呢!對(duì)于初學(xué)者來(lái)說(shuō),對(duì)于這種實(shí)例性很強(qiáng)的項(xiàng)目,沒(méi)有數(shù)據(jù),可以宣布50%已經(jīng)放棄了。那么,在以后的學(xué)習(xí)過(guò)程中,沒(méi)有數(shù)據(jù),當(dāng)然我們要自己創(chuàng)造數(shù)據(jù)。如下代碼所示,我們可以創(chuàng)建有name、mail、date的csv文件來(lái),并且實(shí)現(xiàn)郵件合并的功能。

import pandas as pd
import numpy as np
import random
import csv
from mailmerge import MailMerge
#生成姓名
def create_fname_data():
    word_select = []
    for i in range(97, 123):
        word_select.append(chr(i))
    print(word_select)
    name_select = []
    for i in range(6):
        name = ''
        for i in range(5):
            name += random.choice(word_select)
        name+=' '
        for i in range(5):
            name += random.choice(word_select)
        name_select.append(name.title())
    print(name_select)
    return name_select

#生成郵箱
def create_mail():
    word_select=[str(i) for i in range(9)]
    all_number_select=[]
    for i in range(6):
        number_select=''
        for i in range(10):
            number_select+=random.choice(word_select)
        endwith=['@163.com','@qq.com','@icloud.com']
        number_select+=random.choice(endwith)
        all_number_select.append(number_select)
    return all_number_select

#創(chuàng)建csv文件
def add_csv():
    df=pd.DataFrame(
        {
            'name':pd.Series(create_fname_data()),
            'date':pd.Series(pd.date_range('20210101',periods=6)),
            "mail":pd.Series(create_mail()),
        }
    )
    print(df)
    df.to_csv('./data/random_data.csv')

if __name__ == '__main__':
    add_csv()
    with open('./data/random_data.csv',encoding='utf-8') as f:#郵件合并數(shù)據(jù)目錄位置
        reader=csv.reader(f)
        next(reader)
        for index,name,date,mail in reader:
            doc=MailMerge('./data/test1.docx')#模板文件目錄
            print(name,mail,date)
            doc.merge(name=name,mail=mail,date=date)#郵件合并
            doc.write(f'./data/{name}.docx')#寫入文件

下圖是自動(dòng)生成的word文檔。

在這里插入圖片描述

簡(jiǎn)簡(jiǎn)單單的幾行代碼就可以完成郵件合并功能,如果有幾千份數(shù)據(jù)源,當(dāng)然,稍微修改下代碼,就可以在幾秒鐘完成郵件合并,豈不樂(lè)哉?

到此這篇關(guān)于python實(shí)現(xiàn)自動(dòng)化辦公郵件合并功能的文章就介紹到這了,更多相關(guān)python郵件合并內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論