精华内容
下载资源
问答
  • 得到办公地址
    千次阅读
    2021-07-24 00:46:00

    原标题:办公人员应掌握哪些办公软件技能

    一、行业前景:

    随着电脑的普及与发展,办公自动化‌‌已经渗入到各行各业。熟练地使用办公软件已经成为对各行各业从业人员使用电脑的基本要求,而掌握一种功能强大的办公软件则能帮助你更好地处理各种复杂的办公文档。

    二、课程简介:

    品文教育通过商务办公软件学习,让学员掌握电脑基础知识和日常电脑软件维护知识,并熟练使用办公自动化的Word/ Excel/ PowerPoint等软件,使学员能够轻松工作、提高效率、节省时间、增强个人的办公执行力,成为合格的高级办公人员。

    三、学习对象:

    1、零基础学习,对电脑感兴趣;

    2、有意从事文员、文秘、会计等工作的社会青年;

    3、欲从事文案工作及高级文案和管理工作者。

    4.自由工作者

    5.互联网工作者

    6.婚纱摄影店工作者

    7. 纯兴趣爱好者

    四、培训内容:

    1、计算机基础知识:计算机的发展趋势、计算机系统及系统组成;操作系统的概念;文件与文件夹、资源管理器的使用、利用控制面板管理计算机、如何进行文件的压缩、解压缩及虚拟光驱等常用软件的使用。

    2、Word:Word基本操作、文档的管理、编辑技功、常用格式设置、字符格式的编排、段落的编排、排版技功、精美图文混排的文档、日常办公表格的使用、样式、宏的使用。

    3、Excel:专业电子表格制作排版,学习函数和公式计算表格,各式图表的建立和排版,数据处理。

    4、PowerPoint:面向商业及企业的专业幻灯片制作,精彩的动画设计方案,图文并貌,声影结合。

    5、outlook:综合运用、信息的整合处理、客户资料的管理及归档、邮箱管理。

    6、互联网应用:网络的概念和基本操作、常用字的网络互联网术语、接入IE的方式、浏览器IE的基本操作、邮件地址格式、收费及免费邮箱、软件下载、文件传输。

    7.移动端常用软件的使用

    五、培训方式和特点:

    教师授课与学生上机实践相结合;以学员为中心,采取实例演练的形式授课,理论结合实践,让学员轻松掌握所学内容。在课程中所获得的技能和知识返回搜狐,查看更多

    责任编辑:

    更多相关内容
  • 10个python办公黑科技,助你办公效率提高100倍

    万次阅读 多人点赞 2021-06-02 11:46:55
    ") 接着获取目录下所有文件: file_list = os.listdir(path) 最后循环遍历每一份图片,使用 imread 方法读取图片获得该图片对象,并且使用 putText 方法为该图片对象添加水印信息,水印信息参数已在注释中说明,最后...

    1946年,世界上第一台通用计算机“ENIAC”在美国宾夕法尼亚大学诞生;“ENIAC”占地170平方米,重达30吨,耗电功率约150千瓦,每秒钟可进行5000次运算,这个庞然大物用于美国国防部进行弹道计算。

    在当时,计算机只是被用于了特殊部门。现如今已过60余年,人类在计算机发展进程中越走越远,技术的发展使价格越加便宜,体积也更加便于携带,计算机随之出现在了各行各业之中。在第47期《中国互联网络发展状况统计报告》中提到,截至2020年12月,中国网民数量达到9.89亿,互联网普及率达到70.4%,如此多的用户必然有着巨大的商业市场,所需要的计算机应用程序也越加多样,那么创造这些计算机应用程序就需要进行程序编写。

    在计算机中,编写程序需要使用计算机编程语言,由于种类及针对性不同,计算机语言存在上百种,那对于目前日益复杂的办公需求,到底什么语言才可以提高我们的办公效率呢?如今有了一个答案,这个热门的语言叫做 python,python 拥有着众多的第三方库,或者说这些库就是已经实现好的功能,正等着你去使用它,完成你需要的定制功能;我们只需要学会 python 基础语法,既可以在办公中提高自己的工作效率。

    今天这篇文章将会模拟解决 10 个办公需求为主要内容,带读者感受 python 的魅力;当然,读者也可以从本篇文中直接得到这 10 个问题解决办法。本篇文将要解决的 10 个办公需求如下:

    • 上班第一天,老板叫我从一堆文本信息中提取出手机号码,我改如何去做?
    • 上班第二天,领导叫我将第一天提取的电话号码存储到 Excel 中,我是如何快速解决的。
    • 上班第三天,今天叫我去文本中提取邮箱了,给了我一天时间,但我玩了半天才开始进行信息提取。
    • 上班第四天,今天给了我一堆图片,让我加上公司水印。
    • 上班第五天,前同事的电脑中太多重复文件,领导让我清理重复文件精简信息。
    • 上班第六天,领导跟我说数一下这个文本到底有多少个中文字符。
    • 上班第七天,帮助美工小姐姐将网址生成二维码图片。
    • 上班第八天,如何将图片生成 gif?我手到擒来。
    • 上班第九天,人事急匆匆的找到我让我急忙翻译一份英文文档,我立马答应下来。
    • 上班第十天,提取视频的音频信息并且升职加薪!

    上班第一天

    上班第一天,你的上级给你一堆文本文件,叫你去提取出手机号码。如果是常规的办公人员,获取信息会一个个的去文本中查找,但在如今计算机深度普及的时代,显然提高办公效率解放自身才是更好的选择;那么这时,就让 python 祝你一臂之力,在职场腾飞吧。

    首先我们可以考虑,文本文件为 txt 的后缀文件,这个文本文件第一件事情则是需要读取;读取文本信息需要使用 python 的 open 函数,此时创建一个 python 文件名为 day1.py 编写一个函数名为 get_str,传入参数为需要读取到的文件路径,该函数返回读取到的内容,函数代码如下:

    #读取目标文本文件
    def get_str(path):
        f = open(path,encoding="utf-8")  
        data = f.read()
        f.close()
        return data
    

    此时已经编写好了读取文本内容函数,那么接下来就应该需要在这个读取到的值之中提取电话号码,提取电话号码使用正则,在此不过多说明正则的使用用法;使用正则我们需要使用 re模块;引入 re 模块后,调用 re 模块的 findall 方法对电话号码进行读取,然后进行返回:

    import re
     
    #正则获取文本号码
    def get_phone_number(str):
        res = re.findall(r'(13\d{9}|14[5|7]\d{8}|15\d{9}|166{\d{8}|17[3|6|7]{\d{8}|18\d{9})', str)
        return res
    

    那么最后一步就还剩保存信息。保存信息创建一个函数名为 save_res,传入两个参数分别是提取号码的结果以及保存文件的路径,之后遍历结果使用 write 方法写入即可,该函数代码如下:

    #保存得到号码
    def save_res(res,save_path):
        save_file = open(save_path, 'w') 
        for phone in res: 
            save_file.write(phone) 
            save_file.write('\n') 
        save_file.write('\n号码共计:'+str(len(res)))
        save_file.close() 
        print('号码读取OK,号码共计:'+str(len(res)))
    

    那么最后一步就还剩如何如何调用已创建的代码。此时使用 input 接收两个输入值;一个为需要读取的目标文件路径,另一个为需要保存结果的文件路径,之后依次调用函数即可,代码如下:

    path=input("请输入文件路径:")
    save_path=input("请输入文件保存路径:")
    #read_str=get_str(path)
    res=get_phone_number(get_str(path))
    save_res(res,save_path)
    

    此时我们创建 1 个 txt 文件用于测试,文件名及后缀为 phone.txt,内容为:

    张三:15888888888
    李四:15888888888
    王五:15888888888
    草帽:15888888888
    李四:15888888888
    柳叶:15888888888
    柳叶:15888888888
    李四:15888888888
    柳叶:15888888888
    柳叶:15888888888
    李四:15888888888
    柳叶:15888888888
    柳叶:15888888888
    李四:15888888888
    柳叶:15888888888
    李四:15888888888
    李四:15888888888
    柳叶:15888888888
    

    接下来在 DOS 中运行 python 文件 day1,输入文件存储路径以及保存路径,当完成信息提取后将会有提示:

    此时到保存的文件 res.txt 查看,发现电话号码信息已经被提取:


    此时第一天的工作轻松搞定,并且还可以把脚本分享给同事,提高自己的形象,岂不美哉?

    上班第二天

    上班第二天,新分配给你的任务是将第一天的 phone.txt 文本使用 Excel 保存,此时如果该文本是上万条信息,可能你独自手动操作将会耗时非常久才能完成这个任务,并且大概率有遗漏。这时使用 python 进行自动化操作将会极大的减少你操作的时间,并且在程序正确的情况下遗漏数据概率极低。那 python 是否可以胜任第二天的功能呢?答案当然是“能!”。python 有一个第三方库叫做 xlwt,通过 xlwt 可以自动将数据保存到 Excel 文件中,接下来我们来看一下具体如何解决。

    首先创建一个 python 文件名为 day2.py,在头部引入 xlwt:

    import xlwt
    

    由于我们当前所需要的数据是第一天任务用到的,在这里我们继续使用第一天所用使用到的 get_str 函数:

    #读取目标文本文件
    def get_str(path):
        f = open(path,encoding="utf-8")  
        data = f.read()
        f.close()
        return data
    

    接着我们创建一个函数名为 save_excel,该函数功能包括了保存文件、设置 sheet 名、设置列名以及设置列值。save_excel 函数接收 4 个参数,分别为 save_path、sheetname、column_name_list、content。首先我们在函数内创建一个 Workbook 对象:

    def save_excel(save_path,sheetname,column_name_list,read_list):
        workbook = xlwt.Workbook()
    

    接着在函数体中使用 add_sheet 增加一个 sheet,add_sheet 函数接收一个参数为 sheet 名称,我们将接收的 sheetname 参数作为 sheetname 的值,add_sheet 函数将会返回创建的这个 sheet 对象,代码写为:

    sheet1 = workbook.add_sheet(sheetname=sheetname)
    

    接收完参数后,我们可以使用 for 循环将传递过来的列名 column_name_list 在该 sheet 上进行设置:

    for i in range(0,len(column_name_list)):
            sheet1.write(0,i,column_name_list[i])
    

    以上代码中 write 方法第一个参数为 sheet 的第几行,这里为 0 即为最开始的一行;参数 i 为第几列,由于 i 是从 0 开始到当前列元素长度位置进行对 column_name_list 的遍历,此时则是从 0 到 column_name_list 的最后一个元素,那么将会从最开头的列到对应最尾的列,则将所有列名填写值 sheet 页头部。

    接着就应该为这些列设置元素了。此时遍历传递过来的 read_list,read_list 为这些列的具体内容,例如姓名与电话号码。此时遍历 read_list 由于原始数据每一行将会是以 : 作为姓名与电话分隔,例如 “张三:15888888888”,这时遍历 read_list 列表应该将值再进行分隔,以列名设置同理进行赋值,在此不再赘述,代码如下:

    i=1
    for v in read_list:
        kval=v.split(':')
        for j in range(0,len(kval)):
            sheet1.write(i+1,j,kval[j])
            print(kval[j])
        i=i+1
    

    最后使用 workbook 对象调用 save 方法,传递保存地址即可。那么该 save_excel 自定义函数完整代码如下:

    #保存为Excel文件
    def save_excel(save_path,sheetname,column_name_list,read_list):
        workbook = xlwt.Workbook()
        sheet1 = workbook.add_sheet(sheetname=sheetname)
        for i in range(0,len(column_name_list)):
            sheet1.write(0,i,column_name_list[i])
        i=1
        for v in read_list:
            kval=v.split(':')
            for j in range(0,len(kval)):
                sheet1.write(i+1,j,kval[j])
            i=i+1
        workbook.save(save_path)
        print('信息保存 OK,记录条数共计:'+str(len(read_list)))
    

    此时已经完成了主要功能的编写,那么接下来就应该接受用户输入 文件路径、文件保存路径、sheetname、列名 以及对原始数据用换行符 “\n” 作为列表分隔符,调用部分完整代码如下:

    path=input("请输入文件路径:")
    save_path=input("请输入文件保存路径:")
    sheet_name=input("请输入sheetname:")
    column_name=input("请输入列名,并且使用英文逗号隔开:")
    column_name_list=column_name.split(',')
    
    read_str=get_str(path)
    read_list=read_str.split('\n')
    save_excel(save_path,sheet_name,column_name_list,read_list)
    

    此时运行 day2.py 文件,输入完所需内容将会出现成功提示:


    随后在保存的文件中可以看到提取出来的信息:

    上班第三天

    时间到了第三天,你领导问你如何知道python学习方向的?你告诉了他,是买了这一份知识图鉴:

    你把你的送给了领导并且自己又买了一份。第三天领导给你的任务是从文本中提取邮箱,这个任务跟第一个任务差不多,我们只需要替换正则即可完成任务。创建一个 python 文件名为 day3.py,day3.py 所有完整代码如下:

    import re
     
    #正则获取目标信息
    def get_re_str(str):
        res = re.findall(r'^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$', str)
        return res
    
    #读取目标文本文件
    def get_str(path):
        f = open(path,encoding="utf-8")  
        data = f.read()
        f.close()
        return data
    
    #保存得到的信息
    def save_res(res,save_path):
        save_file = open(save_path, 'w') 
        for phone in res: 
            save_file.write(phone) 
            save_file.write('\n') 
        save_file.close() 
        print('信息读取OK,信息共计:'+str(len(res)))
    
    path=input("请输入文件路径:")
    save_path=input("请输入文件保存路径:")
    #read_str=get_str(path)
    res=get_re_str(get_str(path))
    save_res(res,save_path)
    

    在以上代码中,我们为了函数功能与名称对应,修改了部分函数名以及必要的正则信息,在此我们就已经知道,如果从一个文本中提取出常用信息只需要修改对应的正则即可,不会写正则我们可以搜索引擎搜索,直接替换即可完成该功能;在这里,邮箱的正则为 '^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$'。我们此时运行该文件,填上必要的输入信息即可取出对应文本中的邮件文本信息。

    上班第四天

    今天是第四天,你在前三天都做的很不错,自然而然你的上级将会更加看重你。此时你的上级给了你一个G大小的压缩包,告诉你里面的图片都需要添加水印,此时你该如何实现这个功能呢?当然可以通过其他软件付费,但是自己大概率是会垫付这几十块钱,既然已经学会了 python 完成了部分任务,那么就应该去寻找一下 python 是否有相关的支持库。如果你已经开始寻找相关的 python 支持,我可以告诉你“恭喜!你的想法非常正确”。使用 python 的 opencv 库即可完成这个操作。

    安装好 opencv 库后,导入 opencv 库并且引入 os,因为我们将对某一个文件夹下的文件进行批量水印操作,会涉及到目录文件读取:

    import cv2 
    import os  
    

    接下来根据用户输入路径确定需要操作的目录下图片:

    path=input("请输入需要加水印的文件夹路径:")
    

    接着获取目录下所有文件:

    file_list = os.listdir(path)
    

    最后循环遍历每一份图片,使用 imread 方法读取图片获得该图片对象,并且使用 putText 方法为该图片对象添加水印信息,水印信息参数已在注释中说明,最后再使用 imwrite 方法保存图片即可:

    for filename in file_list:
        img1 = cv2.imread(path+filename,cv2.IMREAD_COLOR) 
        cv2.putText(img1,'CSDN',(10,10) , 1, 1, (255,255,255),1)  #图片,文字,位置,字体,字号,颜色,厚度 
        cv2.imwrite(path+filename, img1)
    

    运行程序输入路径后,最终生成的图片结果如下:


    上班第五天

    你在公司已经小有名气,这时你的上级领导跟你说“你上一位同事的电脑中太多重复文件,导出文件过多,需要删除重复文件”;这时你得到了这个任务,那如何去删除重复文件呢?没错,是使用文件的 md5 值进行对照,相同文件的 md5 值一样,只需要遍历该目录的文件 md5 值,若出现重复 md5 则删除该文件即可。

    第一步导入两个模块,其中 hashlib 作为 md5 计算所需的模块:

    import hashlib,os
    

    接着编写一个函数,需要传入一个文件路径,从而获取这个文件的 md5:

    def getMD5(filepath):
        f = open(filepath,'rb')
        md5obj = hashlib.md5()
        md5obj.update(f.read())
        hash = md5obj.hexdigest()
        f.close()
        return str(hash).upper()
    

    以上代码中,hashlib.md5() 为获取一个 md5 加密对象,md5obj.update() 为指定加密的信息,最后 md5obj.hexdigest() 获取加密后的 16 进制字符串,此时就可以得到 md5 加密后的 16 进制了,最后将其返回。接着我们就需要请用户输入需要过滤重复文件的目录:

    path=input("请输入需要重复文件过滤文件夹路径:")
    

    随后获取目录下的文件信息,并且创建一个列表记录 md5 值:

    file_list = os.listdir(path)
    file_md5=[]
    

    接着使用 for 循环对指定目录进行遍历:

    for filename in file_list:
        md5val=getMD5(path+filename)
        if md5val in file_md5:
            os.remove(path+filename)
        else:
            file_md5.append(md5val)
    print("处理完毕...")
    

    以上代码中调用 getMD5 方法获取文件的 md5 值,随后判断该 md5 值是否在记录列表中,如果在则使用 os 的 remove 方法移除该文件,否则就将记录该 md5 值,这样就实现了重复文件删除的操作。

    运行程序输入目录后将清理完重复文件:

    上班第六天

    今天你的领导跟你说,需要读取作者的中文字数,以便于给予发放稿费,但是只能算中文字符;由于之前据说是让实习生慢慢数的,所以希望你能够加快数中文字符的速度。

    当然,对于用了几天 python 的你来说自然难不到,这是一个很简单的操作。需要完成这个需求很简单,我们需要用到 python 两个模块,一个是 os 另一个是 re;os 用于读取文本信息,re 用于判断中文字符,我们先创建一个函数名为 get_str 接收文本路径作为参数,然后返回文本信息;由于这段时间都是使用这个函数,具体的解释并不过多赘述,函数实现如下:

    #读取目标文本文件
    def get_str(path):
        f = open(path)  
        data = f.read()
        f.close()
        return data
    

    接下来依旧是输入目标路径代码:

    path=input("请输入文件路径:")
    

    接着,我们只需要使用 re 模块中的 findall 方法即可提取,我们在 findall 方法中指定中文字符的范围为 \u4e00-\u9fa5 即可:

    path=input("请输入文件路径:")
    
    word=re.findall('([\u4e00-\u9fa5])',get_str(path))
    print("中文字符,除特殊字符外共:",len(word))
    

    最后我们把需要技术的内容复制到一个文本中,运行脚本,结果如下:

    上班第七天

    今天美工小姐姐跟你说,制作海报需要官网的二维码,可是她不知道去哪得到,非常需要你的帮助,你跟她说让她稍等片刻马上发送给她。那,你是怎么实现的呢?

    在 python 中有个库叫做 qrcode,qrcode可以直接生成指定 url 的二维码,首先引入 qrcode 库。

    import qrcode
    

    接着设置你所需要创建二维码的具体信息,例如大小、尺寸、容错等,代码及注释如下:

    qr = qrcode.QRCode(
    	version=2,#尺寸
    	error_correction=qrcode.constants.ERROR_CORRECT_L,#容错信息当前为 7% 容错
    	box_size=10,#每个格子的像素大小
    	border=1#边框格子宽度
    )#设置二维码的大小
    

    接着指定 url、生成二维码图片最后进行保存即可:

    qr.add_data("https://www.csdn.net/")#指定 url
    img = qr.make_image()#生成二维码图片
    img.save("F:\work\day7\csdn.png")#保存
    

    运行脚本这时 csdn 官网链接就生成了:

    上班第八天

    上班第八天来了,你的技巧赢得了领导、同事的肯定,同事小王跟你说要你制作一个 gif 图片,他不懂怎么去做,但是有多张图片,你一口答应下来;小王给了你一个文件夹,文件夹中有按序号排列的图片,你需要按照需要进行动图制作。为了介绍方便,我们以以下两张图为例:

    此时所需要的 python 库为 imageio,使用 imageio 可方便的使多张图片生成 gif 图。首先我们需要一个列表存储图片路径,此处为了方便演示,直接使用列表作为存储,并且创建一个变量为图片的保存路径:

    import imageio
    image_list = [r'F:\work\day4\1.png', r'F:\work\day4\2.png']
    gif_name = r'F:\work\day4\gif.gif'
    

    接下来创建一个列表存储读取后的图片信息,方便合成 gif 图片:

    frames = []
    

    接着遍历图片路径,随后使用 imageio 的 imread 方法读取图片添加到 frames 列表之中:

    for image_name in image_list:
        frames.append(imageio.imread(image_name))
    

    接下来使用 imageio 的 mimsave 方法传入 gif_name 保存路径信息、frames 图片信息、‘GIF’ 生成图片类型以及 gif 图的切换秒数 duration 参数为 2:

    imageio.mimsave(gif_name, frames, 'GIF', duration=2)
    

    最后运行该脚本,得到以下 gif 图片:

    上班第九天

    第九天到来,今天一早人事跟你说需要你翻译一份文档成中文,不需要质量太好但是一定要快速。你依旧一口应下,那么你的自信来源于哪呢?当然是来源于 python 的强大。python 中有一个库叫做 translate 可以直接翻译英文文本,我们首先引入该库:

    from translate import Translator
    

    随后设置翻译的语言类型:

    translator = Translator(to_lang="Chinese")
    

    接着设定翻译的语言文本,在此我们创建一个函数直接获取文本信息:

    def get_str(path):
        f = open(path)  
        data = f.read()
        f.close()
        return data
    

    接着要求用户输入文件路径并且获得文件文本:

    path=input("请输入文件路径:")
    text=get_str(path)
    

    文本信息为:

    Virtual Group Coaching: How to Improve Group Relationships in Remote Work Settings
    

    最关键的一步,我们将文本拿去 translate 方法中进行翻译,最后输出:

    translation = translator.translate(text)
    print(translation)
    

    我们最后运行脚本,得到结果:

    上班第十天成功转正并升职

    第十天,今天领导给了你一个视频文件,希望你能够提取出音频,他对你非常看重,并且跟你说过完今天转正后提前升职加薪,你也是非常兴奋,当场3句代码直接提取出了指定视频的音频。

    python 对视频进行操作可以使用 moviepy 库,第一步引入 moviepy:

    from moviepy.editor import AudioFileClip
    

    随后使用 AudioFileClip 获取视频信息:

    my_audio_clip = AudioFileClip("E:\PyVedio\py02.mp4")
    

    最后直接使用 方法将视频的音频写入到文件之中:

    my_audio_clip.write_audiofile("E:\PyVedio\py02.wav")
    

    看完了 python 那么多的“神奇”妙用,你还不赶紧用于办公吗?当下社会对办公效率的要求日益加深,合理的学会一门编程语言进行高效的办公是突出个人能力的途径之一。python 作为当下最流行的语言之一,拥有许许多多强大的第三库支持,在办公领域方面应用得当将会祝你在职场中斩荆披棘、突破自我。

    上班第十一天跟领导出差突遇紧急事件

    今天你们出差来到一个偏僻的地方,酒店wifi服务员自己也不懂,只记得很简单,你直接使用python进行了破解,随后领导跟你说要马上做一个舆论分析非常紧急,你立马开始着手制作。领导怎么知道你懂那么多?那是因为他也买了CSDN 的 python 知识图鉴,知道了 python 的全部学习路线,你也想知道吗?那就购买一份吧,30块钱祝你腾飞~

    展开全文
  • 然之协同办公系统 5.2

    2021-05-01 00:56:10
    然之协同办公系统由客户管理(crm)、日常办公(oa)、现金记账(cash)、团队分享(team)和应用导航(ips)五大模块组成,主要面向中小团队的企业内部管理,和市面上其他的产品相比,然之协同更专注于提供一体化、精简的解决...
  • 本系统有管理员(公司领导)和普通员工两种用户,普通员工通过登录模块进入本系统之后,可以进行查看系统首页、个人办公(修改密码、个人设置)、行政办公(申请菜单、我的申请)、查看文件、查看公告等操作。...
  • 办公系统解决方案

    2019-03-04 16:16:48
    协同管理平台不仅仅是传统的OA软件,而是一个涵盖协同办公、信息充分关联、各种业务系统充分协同综合协同办公平台,它是现在及未来系统的集成平台。
  • 生产办公系统,全称是善翔生产办公系统,以下简称系统,是针对中小生产企业开发的,基于B/S结构的生产办公管理系统,由善翔科技独立开发设计。 系统以PHP+smarty mysql实现,模块化组合,功能强大,操作简单,方便...
  • 城域网将在现代商务活动中扮演十分重要的角色,大型分散...分散办公区域覆盖半径一般为30公里,公司在这一区域内设置多个办公地点,并运用高速网络将这些站点连接起来,使在所有地点的员工都能够高效联系,协同办公
  • 生产办公系统,全称是善翔生产办公系统,以下简称系统,是针对中小生产企业开发的,基于B/S结构的生产办公管理系统,由善翔科技独立开发设计。
  • 这是一份关于办公系统(OA)的需求描述文档,可以让你了解这个系统如何建设,有哪些模块,每个模块的大致业务需求描述。
  • 这是办公自动化哦啊系统的开题报告,里面内容详细,可供参考,有需要的下载
  • 远程办公启动手册.pdf

    2022-06-23 20:06:49
    远程办公启动手册.pdf
  • 公司办公自动化概要设计
  • 随着科技,经济及社会的不断发展与进步,管理和办公活动的重要性日渐突出,引起了各级领导者,管理学者以及技术人员的普遍重视.20世纪60年代以来,在微电子技术和通信技术迅速发展的推动下,办公室也开始了以自动化为重要...
  • 它的灵巧、轻盈、美感的设计,靓丽的外观、绚丽的操作界面、灵活的操控方式以及出众的无线互联能力,迅速在得到了市场的广泛认可,它所具备的良好的性能、超长的供电和优秀的用户体验,为实现移动办公提供了基础。...
  • 公司办公自动化设计说明书
  • 公司办公自动化系统设计说明书
  • DG_MPG_004办公用品管理细则.pdfDG_MPG_004办公用品管理细则.pdfDG_MPG_004办公用品管理细则.pdfDG_MPG_004办公用品管理细则.pdfDG_MPG_004办公用品管理细则.pdf
  • 基于华为3Com NBX网络电话系统构建的企业办公通信平台,将桌面电话和PC结合,同时对重要客户的信息保存(地址薄、录音),通过四方通话、智能转移等高效地为每位客户电话服务,将所有员工都自然地上升为呼叫中心坐席...
  • 模块化做为功能的开发形式,让扩展性得到保证,让你轻松享受二次开发带来的便捷的同时,不再为官方升级而担忧。 跨平台 支持多种服务器环境,支持 平台可运行在WINDOWS、 LIUNX 、UNIX等任何支持PHP+MYSQL服务器...
  • 同时,携程数年前就曾对远程办公进行实验,也得到了相似的结论:在家办公的团队工作绩效提升了13%,工作流动率下降50%。 实时上,我们结合自身体验也能感受到这一结论的合理性,在家办公时我们的身心会相对放松,这...

    首先,远程办公常态化能够在一定程度上提升企业的办公效率。
    据《哈佛商业评论》曾开展的调研显示,远程办公并不会造成大规模的效率降低,相反一些岗位上的效率反而有所提升。同时,携程数年前就曾对远程办公进行实验,也得到了相似的结论:在家办公的团队工作绩效提升了13%,工作流动率下降50%。
    实时上,我们结合自身体验也能感受到这一结论的合理性,在家办公时我们的身心会相对放松,这对于很多岗位的工作十分有利。另一方面,在家办公实际上会模糊上下班时间,事实上造成工作时间的延长。
    在这里插入图片描述
    企业部署远程办公的注意事项
    虽然远程办公的优势明显,但从企业层面进行远程办公的部署依旧有许多值得注意的点。
    其一,远程办公需要常态化的部署,也就是说当疫情等突发情况突然来临时,远程办公方案需要立刻能够投入使用,防止核心业务层面的工作进度和节奏被打乱。

    后疫情时代,IIS7远程助手是个不错的选择
    1、它可以远程,单位里你的电脑、公司、办公室、酒店、网吧、家里的电脑等。疫情隔离,远程办公首选利器。
    2、使用windows远程桌面或IIS7远程桌面远程,安全、速度等质量保障。
    3、无视windows任意家庭版限制
    4、使用IIS7服务端全新分配,新的远程地址
    连接方式也非常简单
    1、需要被远程的电脑,下载安装IIS7远程助手。获取远程地址
    2、使用其他台电脑,打开mstsc。输入远程地址。进行远程
    3、或使用IIS7远程桌面,添加 远程链接。进行远程
    在这样部署后,员工就可以在家使用个人电脑远程开机公司办公电脑之后,通过远程桌面进行远程办公,远程办公体系的基础框架也搭建完成。
    在这里插入图片描述
    在这里插入图片描述

    其二,远程办公涉及的设备以及办公地点往往多而分散,方案的部署需要尽可能的低门槛。
    其三,远程办公需要保证企业核心机密资料的安全性,防止信息泄露造成的网络信息安全事故。
    其四,远程办公需要克服员工自己设备的系统差异,方案需要具备跨系统的运行能力。
    以上四点总而言之,即效率与管理,这两个层面是企业部署远程办公时所需要注意的关键点,也是企业选择远程办公解决方案的核心判断依据

    展开全文
  • 项目管理文档,资源分配,具体时间段工作流程,作课程设计参考使用
  • 高级中学云办公技术整体解决方案,摒弃繁琐的硬件设备,采用大数据,云计算方式,符合当下教育信息化发展的要求
  • 这个操作很有用,爬虫得到的数据,可以使用该方式保存成Excel文件; workbook = load_workbook(filename = "test.xlsx") sheet = workbook.active print(sheet) data = [ ["唐僧","男","180cm"], ["孙悟空","男",...

    本文是鉴于有些粉丝的工作需求,有时候需要遇到这些文件的处理。因此,我写了一个文章集合,供大家参考,整篇文章已经整理成书册。👇👇👇
    戳我领取《Python自动化大全》
    戳我领取《Python自动化大全》
    戳我领取《Python自动化大全》
    在这里插入图片描述

    目录

      章节一:python使用openpyxl操作excel
        1、openpyxl库介绍
        2、python怎么打开及读取表格内容?
           1)Excel表格述语
           2)打开Excel表格并获取表格名称
           3)通过sheet名称获取表格
           4)获取表格的尺寸大小
           5)获取表格内某个格子的数据
             ① sheet[“A1”]方式
             ② sheet.cell(row=, column=)方式
           6)获取某个格子的行数、列数、坐标
           7)获取一系列格子
             ① sheet[]方式
             ② .iter_rows()方式
             ③ sheet.rows()
        3、python如何向excel中写入某些内容?
           1)修改表格中的内容
             ① 向某个格子中写入内容并保存
             ② .append():向表格中插入行数据
             ③ 在python中使用excel函数公式(很有用)
             ④ .insert_cols()和.insert_rows():插入空行和空列
             ⑤ .delete_rows()和.delete_cols():删除行和列
             ⑥ .move_range():移动格子
             ⑦ .create_sheet():创建新的sheet表格
             ⑧ .remove():删除某个sheet表
             ⑨ .copy_worksheet():复制一个sheet表到另外一张excel表
             ⑩ sheet.title:修改sheet表的名称
             ⑪ 创建新的excel表格文件
             ⑫ sheet.freeze_panes:冻结窗口
             ⑬ sheet.auto_filter.ref:给表格添加“筛选器”
        4、批量调整字体和样式
           1)修改字体样式
           2)获取表格中格子的字体样式
           3)设置对齐样式
           4)设置边框样式
           5)设置填充样式
           6)设置行高和列宽
           7)合并单元格
      章节二:python使用PyPDF2和pdfplumber操作pdf
        1、PyPDF2和pdfplumber库介绍
        2、python提取PDF文字内容
           1)利用pdfplumber提取文字
           2)利用pdfplumber提取表格并写入excel
        3、PDF合并及页面的排序和旋转
           1)分割及合并pdf
             ① 合并pdf
             ② 拆分pdf
           2)旋转及排序pdf
             ① 旋转pdf
             ② 排序pdf
        4、pdf批量加水印及加密、解密
           1)批量加水印
           2)批量加密、解密
             ① 加密pdf
             ② 解密pdf并保存为未加密的pdf
      章节三:python使用python-docx操作word
        1、python-docx库介绍
        2、Python读取Word文档内容
           1)word文档结构介绍
           2)python-docx提取文字和文字块儿
             ① python-docx提取文字
             ② python-docx提取文字块儿
           3)利用Python向Word文档写入内容
             ① 添加段落
             ② 添加文字块儿
             ③ 添加一个分页
             ④ 添加图片
             ⑤ 添加表格
             ⑥ 提取word表格,并保存在excel中(很重要)
        3、利用Python调整Word文档样式
           1)修改文字字体样式
           2)修改段落样式
             ① 对齐样式
             ② 行间距调整
             ③ 段前与段后间距

    章节一:python使用openpyxl操作excel

    1、openpyxl库介绍

    • openpyxl最好用的python操作excel表格库,不接受反驳;
    • openpyxl官网链接:openpyxl官网
    • openpyxl只支持【.xlsx / .xlsm / .xltx / .xltm】格式的文件;

    2、python怎么打开及读取表格内容?

    1)Excel表格述语

    这里需要大家仔细查看图中的每一项内容,知道什么是“行(row)、列(column)”?什么是“格子(cell)”?什么是“sheet表”?
    在这里插入图片描述

    2)打开Excel表格并获取表格名称
    from openpyxl import load_workbook
    workbook = load_workbook(filename = "test.xlsx")
    workbook.sheetnames
    

    结果如下:
    在这里插入图片描述

    3)通过sheet名称获取表格
    from openpyxl import load_workbook
    workbook = load_workbook(filename = "test.xlsx")
    workbook.sheetnames
    sheet = workbook["Sheet1"]
    print(sheet)
    

    结果如下:
    在这里插入图片描述

    4)获取表格的尺寸大小
    • 这里所说的尺寸大小,指的是excel表格中的数据有几行几列,针对的是不同的sheet而言。
    sheet.dimensions
    

    结果如下:
    在这里插入图片描述

    5)获取表格内某个格子的数据
    ① sheet[“A1”]方式
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    cell1 = sheet["A1"]
    cell2 = sheet["C11"]
    print(cell1.value, cell2.value)
    
    """
    workbook.active 打开激活的表格;
    sheet["A1"] 获取A1格子的数据;
    cell.value 获取格子中的值;
    """
    

    结果如下:
    在这里插入图片描述

    ② sheet.cell(row=, column=)方式
    • 这种方式更简单,大家可以对比这两种方式;
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    cell1 = sheet.cell(row = 1,column = 1)
    cell2 = sheet.cell(row = 11,column = 3)
    print(cell1.value, cell2.value)
    

    结果如下:
    在这里插入图片描述

    6)获取某个格子的行数、列数、坐标
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    cell1 = sheet["A1"]
    cell2 = sheet["C11"]
    print(cell1.value, cell1.row, cell1.column, cell1.coordinate)
    print(cell2.value, cell2.row, cell2.column, cell2.coordinate)
    """
    .row 获取某个格子的行数;
    .columns 获取某个格子的列数;
    .corordinate 获取某个格子的坐标;
    """
    

    结果如下:
    在这里插入图片描述

    7)获取一系列格子
    ① sheet[]方式
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    # 获取A1:C2区域的值
    cell = sheet["A1:C2"]
    print(cell)
    for i in cell:
        for j in i:
            print(j.value)
    

    结果如下:
    在这里插入图片描述
    特别的:如果我们只想获取“A列”,或者获取“A-C列”,可以采取如下方式:

    sheet["A"]    --- 获取A列的数据
    sheet["A:C"]    --- 获取A,B,C三列的数据
    sheet[5]   --- 只获取第5行的数据
    
    ② .iter_rows()方式
    • 当然有.iter_rows()方式,肯定也会有.iter_cols()方式,只不过一个是按行读取,一个是按列读取。
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    # 按行获取值
    for i in sheet.iter_rows(min_row=2, max_row=5, min_col=1, max_col=2):
        for j in i:
            print(j.value)
    # 按列获取值
    for i in sheet.iter_cols(min_row=2, max_row=5, min_col=1, max_col=2):
        for j in i:
            print(j.value)      
    

    结果如下:
    在这里插入图片描述

    ③ sheet.rows()
    • 帮助我们获取所有行
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    for i in sheet.rows:
            print(i)
    

    结果如下:
    在这里插入图片描述

    3、python如何向excel中写入某些内容?

    1)修改表格中的内容
    ① 向某个格子中写入内容并保存
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    sheet["A1"] = "哈喽" # 这句代码也可以改为cell = sheet["A1"] cell.value = "哈喽"
    workbook.save(filename = "哈喽.xlsx")
    """
    注意:我们将“A1”单元格的数据改为了“哈喽”,并另存为了“哈喽.xlsx”文件。
    如果我们保存的时候,不修改表名,相当于直接修改源文件;
    """
    

    结果如下:
    在这里插入图片描述

    ② .append():向表格中插入行数据
    • .append()方式:会在表格已有的数据后面,增添这些数(按行插入);
    • 这个操作很有用,爬虫得到的数据,可以使用该方式保存成Excel文件;
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    data = [
        ["唐僧","男","180cm"],
        ["孙悟空","男","188cm"],
        ["猪八戒","男","175cm"],
        ["沙僧","男","176cm"],
    ]
    for row in data:
        sheet.append(row)
    workbook.save(filename = "test.xlsx")
    

    结果如下:
    在这里插入图片描述

    ③ 在python中使用excel函数公式(很有用)
    # 这是我们在excel中输入的公式
    =IF(RIGHT(C2,2)="cm",C2,SUBSTITUTE(C2,"m","")*100&"cm")
    # 那么,在python中怎么插入excel公式呢?
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    sheet["D1"] = "标准身高"
    for i in range(2,16):
        sheet["D{}".format(i)] = '=IF(RIGHT(C{},2)="cm",C{},SUBSTITUTE(C{},"m","")*100&"cm")'.format(i,i,i)
    workbook.save(filename = "test.xlsx")
    

    结果如下:
    在这里插入图片描述
    此时,你肯定会好奇,python究竟支持写哪些“excel函数公式”呢?我们可以使用如下操作查看一下。

    import openpyxl
    from openpyxl.utils import FORMULAE
    print(FORMULAE)
    

    结果如下:
    在这里插入图片描述

    ④ .insert_cols()和.insert_rows():插入空行和空列
    • .insert_cols(idx=数字编号, amount=要插入的列数),插入的位置是在idx列数的左侧插入;
    • .insert_rows(idx=数字编号, amount=要插入的行数),插入的行数是在idx行数的下方插入;
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    sheet.insert_cols(idx=4,amount=2)
    sheet.insert_rows(idx=5,amount=4)
    workbook.save(filename = "test.xlsx")
    

    结果如下:
    在这里插入图片描述

    ⑤ .delete_rows()和.delete_cols():删除行和列
    • .delete_rows(idx=数字编号, amount=要删除的行数)
    • .delete_cols(idx=数字编号, amount=要删除的列数)
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    # 删除第一列,第一行
    sheet.delete_cols(idx=1)
    sheet.delete_rows(idx=1)
    workbook.save(filename = "test.xlsx")
    

    结果如下:
    在这里插入图片描述

    ⑥ .move_range():移动格子
    • .move_range(“数据区域”,rows=,cols=):正整数为向下或向右、负整数为向左或向上;
    # 向左移动两列,向下移动两行
    sheet.move_range("C1:D4",rows=2,cols=-1)
    

    演示效果如下:
    在这里插入图片描述

    ⑦ .create_sheet():创建新的sheet表格
    • .create_sheet(“新的sheet名”):创建一个新的sheet表;
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(sheet)
    workbook.create_sheet("我是一个新的sheet")
    print(workbook.sheetnames)
    workbook.save(filename = "test.xlsx")
    

    结果如下:
    在这里插入图片描述

    ⑧ .remove():删除某个sheet表
    • .remove(“sheet名”):删除某个sheet表;
    workbook = load_workbook(filename = "test.xlsx")
    sheet = workbook.active
    print(workbook.sheetnames)
    # 这个相当于激活的这个sheet表,激活状态下,才可以操作;
    sheet = workbook['我是一个新的sheet']  
    print(sheet)
    workbook.remove(sheet)
    print(workbook.sheetnames)
    workbook.save(filename = "test.xlsx")
    

    结果如下:
    在这里插入图片描述

    ⑨ .copy_worksheet():复制一个sheet表到另外一张excel表
    • 这个操作的实质,就是复制某个excel表中的sheet表,然后将文件存储到另外一张excel表中;
    workbook = load_workbook(filename = "a.xlsx")
    sheet = workbook.active
    print("a.xlsx中有这几个sheet表",workbook.sheetnames)
    sheet = workbook['姓名']  
    workbook.copy_worksheet(sheet)
    workbook.save(filename = "test.xlsx")
    

    结果如下:
    在这里插入图片描述

    ⑩ sheet.title:修改sheet表的名称
    • .title = “新的sheet表名”
    workbook = load_workbook(filename = "a.xlsx")
    sheet = workbook.active
    print(sheet)
    sheet.title = "我是修改后的sheet名"
    print(sheet)
    

    结果如下:
    在这里插入图片描述

    ⑪ 创建新的excel表格文件
    from openpyxl import Workbook
    
    workbook = Workbook()
    sheet = workbook.active
    sheet.title = "表格1"
    workbook.save(filename = "新建的excel表格")
    

    结果如下:
    在这里插入图片描述

    ⑫ sheet.freeze_panes:冻结窗口
    • .freeze_panes = “单元格”
    workbook = load_workbook(filename = "花园.xlsx")
    sheet = workbook.active
    print(sheet)
    sheet.freeze_panes = "C3"
    workbook.save(filename = "花园.xlsx")
    """
    冻结窗口以后,你可以打开源文件,进行检验;
    """
    

    结果如下:
    在这里插入图片描述

    ⑬ sheet.auto_filter.ref:给表格添加“筛选器”
    • .auto_filter.ref = sheet.dimension 给所有字段添加筛选器;
    • .auto_filter.ref = “A1” 给A1这个格子添加“筛选器”,就是给第一列添加“筛选器”;
    workbook = load_workbook(filename = "花园.xlsx")
    sheet = workbook.active
    print(sheet)
    sheet.auto_filter.ref = sheet["A1"]
    workbook.save(filename = "花园.xlsx")
    

    结果如下:
    在这里插入图片描述

    4、批量调整字体和样式

    1)修改字体样式
    • Font(name=字体名称,size=字体大小,bold=是否加粗,italic=是否斜体,color=字体颜色)
    from openpyxl.styles import Font
    from openpyxl import load_workbook
    
    workbook = load_workbook(filename="花园.xlsx")
    sheet = workbook.active
    cell = sheet["A1"]
    font = Font(name="微软雅黑",size=20,bold=True,italic=True,color="FF0000")
    cell.font = font
    workbook.save(filename = "花园.xlsx")
    """
    这个color是RGB的16进制表示,自己下去百度学习;
    """
    

    结果如下:
    在这里插入图片描述

    2)获取表格中格子的字体样式
    from openpyxl.styles import Font
    from openpyxl import load_workbook
    
    workbook = load_workbook(filename="花园.xlsx")
    sheet = workbook.active
    cell = sheet["A2"]
    font = cell.font
    print(font.name, font.size, font.bold, font.italic, font.color)
    

    结果如下:
    在这里插入图片描述

    3)设置对齐样式
    • Alignment(horizontal=水平对齐模式,vertical=垂直对齐模式,text_rotation=旋转角度,wrap_text=是否自动换行)
    • 水平对齐:‘distributed’,‘justify’,‘center’,‘leftfill’, ‘centerContinuous’,‘right,‘general’;
    • 垂直对齐:‘bottom’,‘distributed’,‘justify’,‘center’,‘top’;
    from openpyxl.styles import Alignment
    from openpyxl import load_workbook
    
    workbook = load_workbook(filename="花园.xlsx")
    sheet = workbook.active
    cell = sheet["A1"]
    alignment = Alignment(horizontal="center",vertical="center",text_rotation=45,wrap_text=True)
    cell.alignment = alignment
    workbook.save(filename = "花园.xlsx")
    

    结果如下:
    在这里插入图片描述

    4)设置边框样式
    • Side(style=边线样式,color=边线颜色)
    • Border(left=左边线样式,right=右边线样式,top=上边线样式,bottom=下边线样式)
    • style参数的种类: 'double, ‘mediumDashDotDot’, ‘slantDashDot’,‘dashDotDot’,‘dotted’,‘hair’, 'mediumDashed, ‘dashed’, ‘dashDot’, ‘thin’,‘mediumDashDot’,‘medium’, 'thick’from openpyxl.styles import Side,Borderfrom
    openpyxl import load_workbook
    
    workbook = load_workbook(filename="花园.xlsx")
    sheet = workbook.active
    cell = sheet["D6"]
    side1 = Side(style="thin",color="FF0000")
    side2 = Side(style="thick",color="FFFF0000")
    border = Border(left=side1,right=side1,top=side2,bottom=side2)
    cell.border = border
    workbook.save(filename = "花园.xlsx")
    

    结果如下:
    在这里插入图片描述

    5)设置填充样式
    • PatternFill(fill_type=填充样式,fgColor=填充颜色)
    • GradientFill(stop=(渐变颜色1,渐变颜色2……))
    from openpyxl.styles import PatternFill,GradientFill
    from openpyxl import load_workbook
    
    workbook = load_workbook(filename="花园.xlsx")
    sheet = workbook.active
    cell_b9 = sheet["B9"]
    pattern_fill = PatternFill(fill_type="solid",fgColor="99ccff")
    cell_b9.fill = pattern_fill
    cell_b10 = sheet["B10"]
    gradient_fill = GradientFill(stop=("FFFFFF","99ccff","000000"))
    cell_b10.fill = gradient_fill
    workbook.save(filename = "花园.xlsx")
    

    结果如下:
    在这里插入图片描述

    6)设置行高和列宽
    • .row_dimensions[行编号].height = 行高
    • .column_dimensions[列编号].width = 列宽
    workbook = load_workbook(filename="花园.xlsx")
    sheet = workbook.active
    # 设置第1行的高度
    sheet.row_dimensions[1].height = 50
    # 设置B列的宽度
    sheet.column_dimensions["B"].width = 20
    workbook.save(filename = "花园.xlsx")
    """
    sheet.row_dimensions.height = 50
    sheet.column_dimensions.width = 30
    这两句代码,是将整个表的行高设置为50,列宽设置为30;
    """
    

    结果如下:
    在这里插入图片描述

    7)合并单元格
    • .merge_cells(待合并的格子编号)
    • .merge_cells(start_row=起始行号,start_column=起始列号,end_row=结束行号,end_column=结束列号)
    workbook = load_workbook(filename="花园.xlsx")
    sheet = workbook.active
    sheet.merge_cells("C1:D2")
    sheet.merge_cells(start_row=7,start_column=1,end_row=8,end_column=3)
    workbook.save(filename = "花园.xlsx")
    

    结果如下:
    在这里插入图片描述
    当然,也有“取消合并单元格”,用法一致。

    • .unmerge_cells(待合并的格子编号)
    • .unmerge_cells(start_row=起始行号,start_column=起始列号,end_row=结束行号,end_column=结束列号)

    章节二:python使用PyPDF2和pdfplumber操作pdf

    1、PyPDF2和pdfplumber库介绍

    • PyPDF2官网: PyPDF2官网 ,可以更好的读取、写入、分割、合并PDF文件;
    • pdfplumber官网:pdfplumber官网,可以更好地读取PDF文件内容和提取PDF中的表格;
    • 这两个库不属于python标准库,都需要单独安装;

    2、python提取PDF文字内容

    1)利用pdfplumber提取文字
    import PyPDF2
    import pdfplumber
    
    with pdfplumber.open("餐饮企业综合分析.pdf") as p:
        page = p.pages[2]
        print(page.extract_text())
    

    结果如下:
    在这里插入图片描述

    2)利用pdfplumber提取表格并写入excel
    • extract_table():如果一页有一个表格;
    • extract_tables():如果一页有多个表格;
    import PyPDF2
    import pdfplumber
    from openpyxl import Workbook
    
    with pdfplumber.open("餐饮企业综合分析.pdf") as p:
        page = p.pages[4]
        table = page.extract_table()
        print(table)
        
        workbook = Workbook()
        sheet = workbook.active
        for row in table:
            if not "".join() == ""
                sheet.append(row)
        workbook.save(filename = "新pdf.xlsx")
    

    结果如下:
    在这里插入图片描述
    缺陷:可以看到,这里提取出来的表格有很多空行,怎么去掉这些空行呢?
    判断:将列表中每个元素都连接成一个字符串,如果还是一个空字符串那么肯定就是空行。

    import PyPDF2
    import pdfplumber
    from openpyxl import Workbook
    
    with pdfplumber.open("餐饮企业综合分析.pdf") as p:
        page = p.pages[4]
        table = page.extract_table()
        print(table)
        
        workbook = Workbook()
        sheet = workbook.active
        for row in table:
            if not "".join([str(i) for i in row]) == "":
                sheet.append(row)
        workbook.save(filename = "新pdf.xlsx")
    

    结果如下:
    在这里插入图片描述

    3、PDF合并及页面的排序和旋转

    1)分割及合并pdf
    ① 合并pdf

    首先,我们有如下几个文件,可以发现这里共有三个PDF文件需要我们合并。同时可以发现他们的文件名都是有规律的(如果文件名,没有先后顺序,我们合并起来就没有意义了。)
    在这里插入图片描述
    代码如下:

    from PyPDF2 import PdfFileReader, PdfFileWriter
    
    pdf_writer = PdfFileWriter()
    for i in range(1,len(os.listdir(r"G:\6Tipdm\7python办公自动化\concat_pdf"))+1):
        print(i*50+1,(i+1)*50)
        pdf_reader = PdfFileReader("G:\\6Tipdm\\7python办公自动化\\concat_pdf\{}-{}.pdf".format(i*50+1,(i+1)*50))
        for page in range(pdf_reader.getNumPages()):
            pdf_writer.addPage(pdf_reader.getPage(page))
            
    with open("G:\\6Tipdm\\7python办公自动化\\concat_pdf\merge.pdf", "wb") as out:
        pdf_writer.write(out)
    

    结果如下:
    在这里插入图片描述

    ② 拆分pdf

    这里有一个“时间序列.pdf”的文件,共3页,我们将其每一页存为一个PDF文件。
    在这里插入图片描述
    代码如下:

    from PyPDF2 import PdfFileReader, PdfFileWriter
    
    pdf_reader = PdfFileReader(r"G:\6Tipdm\7python办公自动化\concat_pdf\时间序列.pdf")
    for page in range(pdf_reader.getNumPages()):
        pdf_writer = PdfFileWriter()
        pdf_writer.addPage(pdf_reader.getPage(page))
        with open(f"G:\\6Tipdm\\7python办公自动化\\concat_pdf\\{page}.pdf", "wb") as out:
            pdf_writer.write(out)
    

    结果如下:
    在这里插入图片描述

    2)旋转及排序pdf
    ① 旋转pdf
    • .rotateClockwise(90的倍数):顺时针旋转90度
    • .rotateCounterClockwise(90的倍数):逆时针旋转90度
    from PyPDF2 import PdfFileReader, PdfFileWriter
    
    pdf_reader = PdfFileReader(r"G:\6Tipdm\7python办公自动化\concat_pdf\时间序列.pdf")
    pdf_writer = PdfFileWriter()
    for page in range(pdf_reader.getNumPages()):
        if page % 2 == 0:
            rotation_page = pdf_reader.getPage(page).rotateCounterClockwise(90)
        else:
            rotation_page = pdf_reader.getPage(page).rotateClockwise(90)
        pdf_writer.addPage(rotation_page)
        with open("G:\\6Tipdm\\7python办公自动化\\concat_pdf\\旋转.pdf", "wb") as out:
            pdf_writer.write(out)
    """
    上述代码中,我们循环遍历了这个pdf,对于偶数页我们逆时针旋转90°,对于奇数页我们顺时针旋转90°;
    注意:旋转的角度只能是90的倍数;
    """
    

    其中一页效果展示如下:
    在这里插入图片描述

    ② 排序pdf

    需求:我们有一个PDF文件,我们需要倒序排列,应该怎么做呢?
    首先,我们来看python中,怎么倒叙打印一串数字,如下图所示。
    在这里插入图片描述
    那么倒序排列一个pdf,思路同上,代码如下:

    from PyPDF2 import PdfFileReader, PdfFileWriter
    
    pdf_reader = PdfFileReader(r"G:\6Tipdm\7python办公自动化\concat_pdf\时间序列.pdf")
    pdf_writer = PdfFileWriter()
    for page in range(pdf_reader.getNumPages()-1, -1, -1):
        pdf_writer.addPage(pdf_reader.getPage(page))
    with open("G:\\6Tipdm\\7python办公自动化\\concat_pdf\\倒序.pdf", "wb") as out:
            pdf_writer.write(out)
    

    结果如下:
    在这里插入图片描述

    4、pdf批量加水印及加密、解密

    1)批量加水印
    from PyPDF2 import PdfFileReader, PdfFileWriter
    from copy import copy
    
    water = PdfFileReader(r"G:\6Tipdm\7python办公自动化\concat_pdf\水印.pdf")
    water_page = water.getPage(0)
    
    pdf_reader = PdfFileReader(r"G:\6Tipdm\7python办公自动化\concat_pdf\aa.pdf")
    pdf_writer = PdfFileWriter()
    
    for page in range(pdf_reader.getNumPages()):
        my_page = pdf_reader.getPage(page)
        new_page = copy(water_page)
        new_page.mergePage(my_page)
        pdf_writer.addPage(new_page)
    with open("G:\\6Tipdm\\7python办公自动化\\concat_pdf\\添加水印后的aa.pdf", "wb") as out:
            pdf_writer.write(out)  
    """
    这里有一点需要注意:进行pdf合并的时候,我们希望“水印”在下面,文字在上面,因此是“水印”.mergePage(“图片页”)
    """
    

    结果如下:
    在这里插入图片描述

    2)批量加密、解密
    • 这里所说的“解密”,是在知道pdf的密码下,去打开pdf,而不是暴力破解;
    ① 加密pdf
    from PyPDF2 import PdfFileReader, PdfFileWriter
    
    pdf_reader = PdfFileReader(r"G:\6Tipdm\7python办公自动化\concat_pdf\时间序列.pdf")
    pdf_writer = PdfFileWriter()
    for page in range(pdf_reader.getNumPages()):
        pdf_writer.addPage(pdf_reader.getPage(page))
    # 添加密码
    pdf_writer.encrypt("a123456")
    with open("G:\\6Tipdm\\7python办公自动化\\concat_pdf\\时间序列.pdf", "wb") as out:
            pdf_writer.write(out)  
    

    结果如下:
    在这里插入图片描述

    ② 解密pdf并保存为未加密的pdf
    from PyPDF2 import PdfFileReader, PdfFileWriter
    
    pdf_reader = PdfFileReader(r"G:\6Tipdm\7python办公自动化\concat_pdf\时间序列.pdf")
    # 解密pdf
    pdf_reader.decrypt("a123456")
    pdf_writer = PdfFileWriter()
    for page in range(pdf_reader.getNumPages()):
        pdf_writer.addPage(pdf_reader.getPage(page))
    with open("G:\\6Tipdm\\7python办公自动化\\concat_pdf\\未加密的时间序列.pdf", "wb") as out:
            pdf_writer.write(out)  
    

    结果如下:
    在这里插入图片描述

    章节三:python使用python-docx操作word

    1、python-docx库介绍

    • 该模块儿可以创建、修改Word(.docx)文件;
    • 此模块儿不属于python标准库,需要单独安装;
    • python-docx使用官网: python-docx官网
    • 我们在安装此模块儿使用的是pip install python-docx,但是在导入的时候是import docx;

    2、Python读取Word文档内容

    • 注意:每进行一个操作,必须保存一下,否则等于白做;
    1)word文档结构介绍

    在这里插入图片描述

    2)python-docx提取文字和文字块儿
    ① python-docx提取文字

    有一个这样的docx文件,我们想要提取其中的文字,应该怎么做?
    在这里插入图片描述
    代码如下:

    from docx import Document
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx")
    print(doc.paragraphs)
    for paragraph in doc.paragraphs:
        print(paragraph.text)
    

    结果如下:
    在这里插入图片描述

    ② python-docx提取文字块儿
    from docx import Document
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx")
    print(doc.paragraphs)
    paragraph = doc.paragraphs[0]
    runs = paragraph.runs
    print(runs)
    for run in paragraph.runs:
        print(run.text)
    ------------------------------
    paragraph = doc.paragraphs[1]
    runs = paragraph.runs
    print(runs)
    for run in paragraph.runs:
        print(run.text)
    

    结果如下:
    在这里插入图片描述

    3)利用Python向Word文档写入内容
    ① 添加段落
    from docx import Document
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx")
    # print(doc.add_heading("一级标题", level=1))   添加一级标题的时候出错,还没有解决!
    paragraph1 = doc.add_paragraph("这是一个段落")
    paragraph2 = doc.add_paragraph("这是第二个段落")
    doc.save(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx") 
    """
    添加段落的时候,赋值给一个变量,方便我们后面进行格式调整;
    """
    

    结果如下:
    在这里插入图片描述

    ② 添加文字块儿
    from docx import Document
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx")
    # 这里相当于输入了一个空格,后面等待着文字输入
    paragraph3 = doc.add_paragraph()
    paragraph3.add_run("我被加粗了文字块儿").bold = True
    paragraph3.add_run(",我是普通文字块儿,")
    paragraph3.add_run("我是斜体文字块儿").italic = True
    doc.save(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx") 
    

    结果如下:
    在这里插入图片描述

    ③ 添加一个分页
    from docx import Document
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx")
    doc.add_page_break()
    doc.save(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx") 
    

    结果如下:
    在这里插入图片描述

    ④ 添加图片
    from docx import Document
    from docx.shared import Cm
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx")
    doc.add_picture(r"G:\6Tipdm\7python办公自动化\concat_word\sun_wu_kong.png",width=Cm(5),height=Cm(5))
    doc.save(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx") 
    """
    Cm模块,用于设定图片尺寸大小
    """
    

    结果如下:
    在这里插入图片描述

    ⑤ 添加表格
    from docx import Document
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx")
    
    list1 = [
        ["姓名","性别","家庭地址"],
        ["唐僧","男","湖北省"],
        ["孙悟空","男","北京市"],
        ["猪八戒","男","广东省"],
        ["沙和尚","男","湖南省"]
    ]
    list2 = [
        ["姓名","性别","家庭地址"],
        ["貂蝉","女","河北省"],
        ["杨贵妃","女","贵州省"],
        ["西施","女","山东省"]
    ]
    
    table1 = doc.add_table(rows=5,cols=3)
    for row in range(5):
        cells = table1.rows[row].cells
        for col in range(3):
            cells[col].text = str(list1[row][col])
    doc.add_paragraph("-----------------------------------------------------------")
    table2 = doc.add_table(rows=4,cols=3)
    for row in range(4):
        cells = table2.rows[row].cells
        for col in range(3):
            cells[col].text = str(list2[row][col])
            
    doc.save(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx") 
    

    结果如下:
    在这里插入图片描述

    ⑥ 提取word表格,并保存在excel中(很重要)
    from docx import Document
    from openpyxl import Workbook
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test2.docx")
    t0 = doc.tables[0]
    
    workbook = Workbook()
    sheet = workbook.active
    
    for i in range(len(t0.rows)):
        list1 = []
        for j in range(len(t0.columns)):
            list1.append(t0.cell(i,j).text)
        sheet.append(list1)
    workbook.save(filename = r"G:\6Tipdm\7python办公自动化\concat_word\来自word中的表.xlsx")
    

    结果如下:
    在这里插入图片描述

    3、利用Python调整Word文档样式

    1)修改文字字体样式
    from docx import Document
    from docx.shared import Pt,RGBColor 
    from docx.oxml.ns import qn
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test2.docx")
    for paragraph in doc.paragraphs:
        for run in paragraph.runs:
            run.font.bold = True
            run.font.italic = True
            run.font.underline = True
            run.font.strike = True
            run.font.shadow = True
            run.font.size = Pt(18)
            run.font.color.rgb = RGBColor(255,255,0)
            run.font.name = "宋体"
            # 设置像宋体这样的中文字体,必须添加下面2行代码
            r = run._element.rPr.rFonts
            r.set(qn("w:eastAsia"),"宋体")
    doc.save(r"G:\6Tipdm\7python办公自动化\concat_word\_test1.docx")
    

    结果如下:
    在这里插入图片描述

    2)修改段落样式
    ① 对齐样式
    from docx import Document 
    from docx.enum.text import WD_ALIGN_PARAGRAPH
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx")
    print(doc.paragraphs[0].text)
    doc.paragraphs[0].alignment = WD_ALIGN_PARAGRAPH.CENTER
    # 这里设置的是居中对齐
    doc.save(r"G:\6Tipdm\7python办公自动化\concat_word\对齐样式.docx")
    """
    LEFT,CENTER,RIGHT,JUSTIFY,DISTRIBUTE,JUSTIFY_MED,JUSTIFY_HI,JUSTIFY_LOW,THAI_JUSTIFY
    """
    

    结果如下:
    在这里插入图片描述

    ② 行间距调整
    from docx import Document 
    from docx.enum.text import WD_ALIGN_PARAGRAPH
    
    doc = Document(r"G:\6Tipdm\7python办公自动化\concat_word\test1.docx")
    for paragraph in doc.paragraphs:
        paragraph.paragraph_format.line_spacing = 5.0
    doc.save(r"G:\6Tipdm\7python办公自动化\concat_word\行间距.docx")
    

    结果如下:
    在这里插入图片描述

    ③ 段前与段后间距
    • 这里提供代码,自行下去检验

    在这里插入图片描述

    展开全文
  • 实施ERP办公系统实施ERP办公系统
  • 关于远程办公,本文篇幅较长,建议收藏后再看哦。 一、好用的远程系统 1、腾讯文档 2018年,腾讯文档以黑马的姿态,杀入在线办公市场。在这个时间点,其实在线文档这类产品已经发展得比较成熟了,腾讯杀入这块...
  •   使用 Apache-2.0 开源许可协议,本项目包含部分企业版(企业版须购买,购买须谨慎)的前端组件如aggrid、dhtmlxgantt,如果使用须获得相关的授权。 链接地址   公众号【Github导航站】回复关键词【gd】获取git...
  • 锐捷网络凭借其领先的产品优势和技术优势,依托强大的研发队伍,为政府倾心打造的网络平台,具有高安全性、高应用性、配置...总之,在今后的应用过程中,锐捷网络政府办公网建设解决方案一定会书写下浓墨重彩的一笔。
  • 办公楼无线网络方案

    2014-04-22 23:06:27
    本方案根据中小企业办公楼实际无线网络覆盖需求,基于汉明科技整体化无线网络架构方案,按照网络架构进行模块化分层部署设计。 在中小企业办公区域有多个隔断和领导办公室,如何保证信号覆盖到办公区域的每一个角落...
  • 在远程办公新常态下,员工不再从内网访问公司资源,访问风险大幅增加。为此,不少企业选择零信任安全框架,同时为终端设备和身份实施多因子认证(MFA)等技术进一步保障安全。
  • 本系统有管理员(公司领导)和普通员工两种用户,普通员工通过登录模块进入本系统之后,可以查看系统首页、个人办公(修改密码、个人设置)、行政办公(申请菜单、我的申请)、查看文件、查看公告等操作。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 65,971
精华内容 26,388
关键字:

得到办公地址