如何用Python把html转为PDF(纯页面内容、纯漂浮页内容、完美没水印和标记)

__完成所有步骤大概需要15分钟__

  度娘搜一搜其实很多在线转换网站,但我们都清楚,这些网站的特点是:质量差、转换量低、有水印、不支持漂浮页、下载过程繁琐……,总结就是:要充钱,下面放一个免费、高质量、无水印、无限转换量、支持漂浮页、一键导出、一劳永逸的教程

01 - 适用场合

  教程适用于html web to PDF以及html file to PDF,还适合于漂浮页的PDF导出,可以直接把某个在线网页进行转换,也可以把本地网页文件进行转换,最终都会转换成PDF

02 - 环境要求

  Windows、Python 2.x 以上(如果不会安装Python的,直接下载一个Anaconda,一键安装后,打开Spyder就可以进行Python编程)
Alt

03 - 操作步骤

  编程API来源于一个网站pdfcrowd,它提供免费的在线转换,但是在线转换有标记以及水印等问题,所以我们使用这个网页提供的API进行编程转换,这样就不会有标记和水印
Alt

3.1 - 注册账号

  进入pdfcrowd,点击右上方的Sign up,填写用户名、密码和邮箱进行注册,然后到邮箱中确定注册,随后便自动返回页面登陆成功
Alt

3.2 - 安装pdfcrowd包

  pdfcrowd是该网页提供的API,win+R打开命令行,输入:pip install pdfcrowd,随后安装完成
Alt

3.3 - 获取API Key

  登陆成功后网页右上角点击自己的用户名,进入账户管理页面,在左侧点击Change API Key获得Key,这个Key需要在编程中使用
Alt

3.4 - 编程运行

  注册时的用户名替换到your_name中,上一步得到的key替换到your_key中,网页地址 / 本地html文件替换到your_url / your_path中,运行程序,在程序同一个目录下得到example.pdf

html web to PDF(网页转PDF)

import pdfcrowd
import sys

try:
    # create the API client instance
    client = pdfcrowd.HtmlToPdfClient('your_name', 'your_key')

    # run the conversion and write the result to a file
    client.convertUrlToFile('your_url', 'example.pdf')
except pdfcrowd.Error as why:
    # report the error
    sys.stderr.write('Pdfcrowd Error: {}\n'.format(why))

    # handle the exception here or rethrow and handle it at a higher level
    raise

html file to PDF(文件转PDF)

import pdfcrowd
import sys

try:
    # create the API client instance
    client = pdfcrowd.HtmlToPdfClient('your_name', 'your_key')

    # run the conversion and write the result to a file
    client.convertFileToFile('your_path', 'example.pdf')
except pdfcrowd.Error as why:
    # report the error
    sys.stderr.write('Pdfcrowd Error: {}\n'.format(why))

    # handle the exception here or rethrow and handle it at a higher level
    raise

3.5 - 运行结果

  以小白的FreeRTOS主页为例,转换为PDF,效果如下:
  转换的结果不是图片,而是与网页相符的文件+链接+图片,矢量格式,无限放大,无水印
Alt
  另外还可以转换网页中的漂浮页,比如某些公司官网的电子offer,一般都是漂浮页,如果直接打印就会把漂浮页后面的内容也打印,此时可以先转换为PDF,稍加处理后再打印

04 - 总结

  Python其实自带了一个html转PDF的模块pdfkit,本质上是wkhtmltopdf网页API的封装,与小白的操作异曲同工,但是用之前需要下载wkhtmltopdf这个软件,然后还需要设置它的路径,过程更加繁琐一点,而pdfkit的转换效果与pdfcrowd差不多,小白更喜欢简单易操作的pdfcrowd

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值