python自动化-pdf文档操作

Python012

python自动化-pdf文档操作,第1张

使用第三方库

官方文档:pymupdf.readthedocs.io/en/latest/

提取图片的整体逻辑如下:

将每一页转换为一张张图片

安装pdf2image, github:github.com/Belval/pdf2…

安装:

使用库: github.com/2Dou/waterm…

步骤:

1.获得一个带水印pdf文件

1.1在图片添加水印,图片插入到word,word保存为pdf

1.2python处理:参考

github.com/2Dou/waterm…

mp.weixin.qq.com/s/_oJA6lbsd…

2.将水印pdf文件合并到源目标pdf文件的每一页

法1,直接在word,插入文本框,旋转,设置无边框,注意设置背景透明,然后复制多个。导出为pdf。

法2,word本身自己的增加水印,设计-水印-自定义文字或图片。缺点是只能是单个水印。

缺点是水印在内容pdf上方,如果设置过大,颜色不太透明,会遮挡内容。

解密:并不是破解,而是在已知密码的情况下解密

作者:秦与商

链接:https://juejin.cn/post/7069582991982329893

1、python-pptx模块简介

使用python操作PPT,需要使用的模块就是python-pptx,下面来对该模块做一个简单的介绍。这里提前做一个说明:python操作PPT,最好是我们提前设计好自己的一套样式,然后利用进行python进行内容的获取和填充(最主要的功能!),最好是不用使用python代码操作PPT的格式,格式的修改肯定不如我们直接在PPT中修改方便。

这里有一点需要注意的是:安装的库是python-pptx,但是导入的时候却有点不同。

在使用python操作PPT之前,首先应该清楚PPT的结构,这个对于之后代码的编写很有帮助

结果如下:

结果如下:

结果如下:

5)获取某一页Slide中的内容

结果如下:

这个概念在下面的效果中,会得以体现。其中prs.slide_layouts[]传入0表示获取的是第一个版式,传入1表示获取的是第二个版式,以此类推下去。

效果如下:

② PPT内容的填写

效果如下:

效果如下:

② 段落的添加

效果如下:

③ 给段落设定层级关系

效果如下:

效果如下:

第一种展示:

效果如下:

第二种展示:

效果如下:

结果如下:

上面我们已经知道怎么添加文本框,现在我们需要做的就是,怎么调整文本框的位置。

结果如下:

结果如下:

结果如下:

当然这里还有一些其他样式的调整,和word很类似,就不一一叙述了。

代码如下:

结果如下:

第一种:Robot Framework

作为最重要的python测试框架之一,Robot Framework主要被用在测试驱动类型的开发与验收中。虽然由python开发而来,但是它也可以在基于.net的Ironpython和基于Java的Jython上运行。同时,作为一个python框架,Robot还能够兼容诸如Windows、MacOS、Linux等平台。

在使用Robot Framework之前,需要先安装python2.7.14及以上版本,在这里推荐大家使用python3.6.4,以确保适当的注解能够被添加到代码段中,并能够跟踪程序的更改,同时,您还需要安装python包管理器--pip。

第二种:Pytest

适用于多种软件测试的Pytest,是另一个python类型的自动化测试框架。凭借着开源和易学的特点,该工具经常被QA团体、开发团体、个人团体以及各种开源项目所使用。鉴于Pytest具有断言重写之类的实用功能,许多大型互联网应用,如Dropbox、Mozilla,都已经从下面将要提到的unittest切换到了Pytest之上。

除了基本的python知识,用户并不需要更多的技术储备。另外,用户只需要有一台带有命令行界面的测试设备,并且安装好了python包管理器以及可用于开发的IDE工具。

第三种:UnitTest/PyUnit

受到Junit启发的UnitTest/PyUnit,也是一种标准化的针对单元测试的python类自动化测试框架。它的基类TestCase提供了各种断言方法、以及所有清理和设置的例程。因此,TestCase子类中的每一种方法都是以test作为名词点缀,以标识它们能够被作为测试用例所运行。用户可以使用load方法和TestSuite类来分组、并加载各种测试。当然,也可以通过联合使用,来构建自定义的测试运行器。正如我们使用Junit去测试Selenium那样,UnitTest也会用到unittest-sml-reporting,并能生成各种XML类型的报告。

第四种:Behave

行为驱动开发是一种基于敏捷软件开发的方法。它能够鼓励开发人员、业务参与者和QA人员,三者之间的协作。python测试框架Behave允许团队避开各种复杂的情况,去执行BDD测试。从本质上说该框架与SpecFlow和Cucumber相似,常被用于执行自动化测试。用户可以通过简单易读的语言来编写测试用例,并能够在其执行期间粘贴到代码之中。而且,那些被设定的行为规范与步骤,也可以被重用到其他的测试方案中。

第五种:Lettuce

Lettuce是另一种基于Cucumber和python的行为驱动类自动化工具。Lettuce主要专注于那些具有行为驱动开发特性的普通任务。它不但简单易用,而且能够使得整个测试过程更流畅、甚至更有趣。

您需要安装带有IDE的python2.7.14及以上版本。当然,您也可以使用pycharm或任何其他IDE工具。同时,您还需要安装python包管理器。