python批量将pdf转换成txt,pythonpdf怎么转换成word

  python批量将pdf转换成txt,pythonpdf怎么转换成word

  同一个操作做两次,就要考虑自动化了!

  大家好,又是Python办公自动化。

  今天的演讲是关于你将会接触到的PDF转换。有许多第三方工具和网站可用于将各种格式的文件转换为PDF。但是使用Python的好处不仅仅是批量转换,脚本一写就一键执行,彻底解放了你的双手。然后,本文将讨论如何使用Python将Word/Excel/PPT/Markdown/Html等各种格式的文件转换成PDF!

  Word转PDF

  从Word转换成PDF应该是最常见的需求。毕竟用PDF格式显示文档更方便。虽然在Word中可以直接导出为PDF格式,但是使用Python进行批量转换效率更高。

  目前Python中有很多把word转换成pdf的库。比如win32可以调用word的底层vba,将word转换成pdf,或者comtypes等。但是这些常用的库只能在Windows机器上运行。所以为了照顾mac用户,本文使用了一个比较小的库docx2pdf,专门用来把Word转换成pdf。它很容易安装。

  pip安装docx2pdf

  它也比win32和其他库更简洁。可以导入一行代码,也可以转换一行代码。

  从docx2pdf导入转换

  转换( input.docx , output.pdf )

  但是有人会说,虽然简单,但是这个操作word本身就可以完成。好,接下来,放大。我们可以使用下面的代码来查找当前或指定文件夹中的所有word文件。

  #查找当前目录中的所有word文件

  导入操作系统

  导入全球

  从pathlib导入路径

  path=os.getcwd() /

  P=Path(Path) #初始化Path对象。

  FileList=list(p.glob(**/*)。docx ))

  接下来,只需编写一个循环,将该目录中的所有单词一次性转换为PDF。

  对于文件列表中的文件:

  convert(file,f“{ file }。pdf’)

  就是这样。在不到10行代码中,只需要一秒钟就可以轻松将指定文件夹中的5个Word副本转换成PDF。现在,我们也可以使用我们以前的自动化系列文章中编写的批量合并PDF来一次单击合并这5个PDF!

  Excel到PDF

  Excel转PDF可能不常用,但作为Office中的重要工具,而且转换后的表格可以复制,就说一下吧。使用的工具既不是常用的openpyxl,也不是pandas,而是另一个专门用于pdf处理的库fpdf。

  进口熊猫作为pd

  将numpy作为np导入

  df_1=pd。DataFrame(np.random.randn(10,2),columns=list(AB ))

  为了便于解释,我们使用Pandas和NumPy创建一个样本数据文件,当然也可以使用本地读取。

  现在您可以使用下面的代码将这个表单转换成PDF。

  从fpdf进口FPDF

  pdf=FPDF()

  pdf.add_page()

  pdf.set_xy(0,0)

  pdf.set_font(arial, B ,14)

  pdf.cell(60)

  pdf.cell(70,10, Excel到pdf ,0,2, C )

  pdf.cell(-40)

  pdf.cell(50,10,索引列,1,0, C )

  pdf.cell(40,10, A ,1,0, C )

  pdf.cell(40,10, B ,1,2, C )

  pdf.cell(-90)

  pdf.set_font(arial ,,12)

  对于范围(0,len(df_1))中的I:

  col_ind=str(i)

  col_a=str(df_1。A.iloc[i])

  col_b=str(df_1。B.iloc[i])

  pdf.cell(50,10, %s % (col_ind),1,0, C )

  pdf.cell(40,10, %s % (col_a),0,0, C )

  pdf.cell(40,10, %s % (col_b),0,2, C )

  pdf.cell(-90)

  pdf.output(Excel2PDF.pdf , F )

  其实思路和openpyxl差不多,遍历每个单元格,写数据,只是现在写成了PDF文件。

  PPT到PDF

  本节介绍如何将PPT转换成PDF,但是我找了一大圈却没有MAC用户可以实现的方法,所以只能针对Windows操作,用的是word2pdf里面提到的comtypes。

  导入系统

  导入操作系统

  导入comtypes.client

  #设定路径

  输入文件路径=sys.argv[1]

  输出文件路径=sys.argv[2]

  输入文件路径=os.path.abspath(输入文件路径)

  输出文件路径=os.path.abspath(输出文件路径)

  #创建PDF

  Powerpoint=com types . client . createobject( Powerpoint。应用程序’)

  powerpoint。可见=1

  幻灯片=powerpoint。演示文稿。打开(输入文件路径)

  #保存PDF

  幻灯片。另存为(输出文件路径,32)

  幻灯片。关闭()

  相关参数和细节可以在comtypes官方文档中找到。因为我是mac,所以没怎么研究过。转换成功后,我可以结合我们之前的批量操作,合并实现自动化!

  Md到pdf

  关于markdown转pdf,几乎所有markdown编辑器都支持导出为pdf格式。我以为这个需求不高,但是我发现很多外国人做了很多md转pdf的轮子,比如md2pdf,markdown2pdf,md2pdf-client等等。因为大多数博客使用markdown格式,所以可以使用这些库将博客文章转换为PDF文档,以便批量存储。

  大家早起试了一圈,找到了一个语法最简单的markdown2pdf3。直接用pip安装就行了,用两行代码把一个md文件转换成pdf。

  从markdown2pdf3导入*

  convert _ markdown _ to _ pdf( test . MD )#您的markdown文件路径

  不过需要注意的是,如果你有中文,需要做一些额外的设置,可以参考官方文档。但是,现在你可以将指定路径中的所有markdown文件批量转换为pdf,方法是结合前面的Word to PDF。例如,可以使用下面的代码查找当前文件夹中的所有md文件。

  导入操作系统

  导入全球

  从pathlib导入路径

  path=os.getcwd() /

  P=Path(Path) #初始化Path对象。

  FileList=list(p.glob(**/*)。MD’))

  Html到pdf

  关于html,也就是把网页转换成PDF,是我最常遇到的问题。其实很简单。这篇文章里提到了在Selenium里爬微信官方账号所有文章之前先用PDFKIT,但是直接用pip安装pdfkit是不够的。我们需要提前去下面的网站选择我们电脑系统对应的wkhtmltopdf下载安装。

  https://wkhtmltopdf.org/downloads.html

  安装后使用pip安装pdfkit。

  pip安装pdf包

  现在,我们可以使用两行代码转换将网页指定为PDF格式,比如将我的第一篇自动化文章转换为PDF。

  好像效果很好。包括代码在内的所有格式都是完全保存的,接下来怎么做就不用我多说了。比如你想下载微信官方账号所有PDF格式的文章,先提取历史文章的网址,然后用pdfkit进行转换。这两个步骤我们已经详细解释过了!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 怎么在word中下载mathtype,word中怎么导入mathtype
  • php生成word文档的三种实现方式是什么,php 生成word
  • php生成word文档的三种实现方式是什么,php 生成word,PHP生成word文档的三种实现方式
  • IceSword,ice of swords
  • IceSword,ice of swords,IceSword (冰刃) 应用图文指南
  • 基于wordpress的博客建设,如何使用wordpress建站
  • ,,WordPress中设置Post Type自定义文章类型的实例教程
  • ,,MYSQL安装时解决要输入current root password的解决方法
  • 学生成绩管理系统c语言课程设计报告,学生成绩管理系统c语言程序设计,C语言学生成绩管理系统课程设计word版
  • 如何用python把pdf转为word,Python转PDF
  • word365怎么转pdf,office365word怎么转换pdf_1
  • Word文档图片不显示,Word文档的图片无法显示出来
  • 如何将多个wps文件合并成一个,WPS多个word文档合并成一个文档
  • wpsword怎么取消首字母大写,wps word取消首字母大写
  • 如何word文档删除空白页,怎样在word文档删除空白页
  • 留言与评论(共有 条评论)
       
    验证码: