Python怎样读取URL生成PDF

news2024/11/14 20:54:59

1. 安装依赖的exe

需要在这个网址,安装一个exe包,地址:https://wkhtmltopdf.org/

进入网址后,点这个位置:

图片

选择一个你的操作系统的下载链接:

图片

安装后的exe文件:

C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe

我已经下载好了一个安装包的地址:链接:https://pan.baidu.com/s/1yDP1opcBF3ORUTKBDu8qhQ 提取码:zmo0

2. 安装pip库

pip install pdfkit

3. 执行转换

import pdfkit

# wkhtmltopdf.exe 为本地安装的路径
exe_path = r"C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe"
config = pdfkit.configuration(wkhtmltopdf=exe_path)

# 调用pdfkit.from_url参数,转换PDF
url = "http://antpython.net/webspider/douban_book_list.html"
pdfkit.from_url(url, 'Python书籍推荐.pdf', configuration=config)

其中:C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe是你安装了https://wkhtmltopdf.org/这个网址的exe程序后得到的本地电脑路径;

pdfkit.configuration(wkhtmltopdf=exe_path)这句代码配置了一个pdfkit的配置项

pdfkit.from_url函数有三个参数:1、url,是要读取的网页链接,用于生成PDF的来源URL;2、'Python书籍推荐.pdf',是本地的要存储结果的PDF文件 3、configuration=config,工具配置,主要是上面的指定了的exe的地址

4. 转换后的效果

图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1942811.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++ 栈( stack )学习

目录 1.栈 2.模拟栈 1.1.入栈( push ) 1.2.出栈( pop ) 1.3.获取栈顶元素( top ) 3.直接使用栈( stack ) 3.1.导入头文件并创建栈 3.2.栈的操作 3.2.1.入栈( push ) 3.2.2.出栈( pop ) 3.2.3.获取栈顶元素( top ) 3.2.4.获取栈中元素个数( size ) 3.2.5.判断栈是否…

【第9章】Spring Cloud之Nacos服务配置

文章目录 前言一、改造前二、服务配置1. 添加依赖2. bootstrap.properties3. Data Id 发布配置4. 项目启动 三、改造后四、更多配置项总结 前言 一、改造前 这是我们之前服务注册和发现时使用的两个服务,在application.yml定义了服务注册的一些配置信息 二、服务…

系统架构设计师①:计算机组成与体系结构

系统架构设计师①:计算机组成与体系结构 计算机结构 计算机的组成结构可以概括为以下几个主要部分:中央处理器(CPU)、存储器(包括主存和外存)、输入设备、输出设备,以及控制器、运算器、总线和…

STM32智能机器人控制系统教程

目录 引言环境准备智能机器人控制系统基础代码实现:实现智能机器人控制系统 4.1 数据采集模块 4.2 数据处理与控制模块 4.3 通信与导航系统实现 4.4 用户界面与数据可视化应用场景:机器人控制与优化问题解决方案与优化收尾与总结 1. 引言 智能机器人控…

js中的“?“/“??“以及“||“的详解(值得收藏)

前言 在JavaScript中,问号(?)通常用于三元运算符,而两个问号(??)则是空值合并运算符,用于在左侧操作数为null或undefined时,返回右侧的操作数。 1、?. (可选链运算符…

NCRE3 1-4 宽带接入技术的基本类型

提示,这一部分内容大多数是记的 xDSL数字用户线技术 分类 按照上行和下行的速率是否相同分类分为速率对称性,速率非对称性 相关缩写 ADSL( 非对称数字用户线) 利用普通电话业务(POTS)方式,提供告诉数字业务,允许保留已有的模拟电话业务的…

【c++】C++类和对象详解(下)

目录 思维导图大纲: const成员函数 取地址运算符重载 再探构造函数-初始化列表 隐式类型转换 c语言中我们了解: c中: 单参数 多参数 防止类型转换 static成员 友元 内部类 匿名对象 对象拷贝时的编译器优化 思维导图…

第11讲:变量的基本

变量的数据类型分为基本数据类型、行生数据类型还有POU实例名三种。 此处主要讨论一下基本数据类型。 基本数据类型的种类 基本数据类型的表示方法 1、布尔型、位串型、常数 2、整数型 (1)有符号整数型 SINT型,INT型,DINT型及LINT型,为有符号整数型,二进制表示的最高…

Aigtek:电压放大器的选型方法有哪些

电压放大器是电子电路中常见的元件,用于将输入电压信号放大到所需的水平。在选择适合特定应用的电压放大器时,需要考虑多个因素,包括性能要求、电源电压、带宽、噪声等。下面安泰电子将详细介绍电压放大器的选型方法,以帮助工程师…

【深入理解SpringCloud微服务】深入理解Eureka核心原理

深入理解Eureka核心原理 Eureka整体设计Eureka服务端启动Eureka三级缓存Eureka客户端启动 Eureka整体设计 Eureka是一个经典的注册中心,通过http接收客户端的服务发现和服务注册请求,使用内存注册表保存客户端注册上来的实例信息。 Eureka服务端接收的…

SQLite读取分析指南:新手也能轻松上手的实用教程

SQLite是一个轻量级的关系型数据库,目前已经更新到SQLite3版本。它不仅具有跨平台的特性而且占用的资源非常低,目标是设计来做嵌入式的。本教程将深入浅出地讲解图形化界面和python脚本来读取sqlite数据库这两种方法,从基础概念到实际应用,step by step地…

Windows定时任务实现关闭和开启声音

目录 1. 下载并放置 nircmd.exe1.1 下载 NirCmd:1.2 放置 nircmd.exe: 2. 定时关闭声音2.1 打开任务计划程序:2.2 创建基本任务:2.3 设置任务名称和描述:2.4 触发器:2.5 操作:2.6 设置程序或脚本…

新手小白的pytorch学习第十弹----多类别分类问题模型以及九、十弹的练习

目录 1 多类别分类模型1.1 创建数据1.2 创建模型1.3 模型传出的数据1.4 损失函数和优化器1.5 训练和测试1.6 衡量模型性能的指标 2 练习Exercise 之前我们已经学习了 二分类问题,二分类就像抛硬币正面和反面,只有两种情况。 这里我们要探讨一个 多类别…

专业护眼灯品牌有哪些?五款爆款护眼灯品牌推荐

在当今时代,电子设备在我们的日常生活中扮演着越来越重要的角色。然而,长时间使用这些设备可能会增加眼睛疲劳和近视的风险。为了解决这一问题,护眼台灯应运而生,并逐渐成为许多家庭和办公室的必需品。面对市场上琳琅满目的护眼台…

<数据集>苹果腐烂识别数据集<目标检测>

数据集格式:VOCYOLO格式 图片数量:978张 标注数量(xml文件个数):978 标注数量(txt文件个数):978 标注类别数:2 标注类别名称:[fresh_apple, rotten_apple] 序号类别名称图片数框数1fresh_apple520922…

排序算法与复杂度介绍

1. 排序算法 1.1 排序算法介绍 排序也成排序算法(Sort Algorithm),排序是将一组数据,依照指定的顺序进行排序的过程 1.2 排序的分类 1、内部排序: 指将需要处理的所有数据都加载到**内部存储器(内存&am…

【NLP自然语言处理】基于BERT实现文本情感分类

Bert概述 BERT(Bidirectional Encoder Representations from Transformers)是一种深度学习模型,用于自然语言处理(NLP)任务。BERT的核心是由一种强大的神经网络架构——Transformer驱动的。这种架构包含了一种称为自注…

MySQL_JDBC

目录 一、JDBC常用的接口和类 1.1 数据库连接 Connection 1.2 Statement 对象 二、JDBC的使用 总结 【Java 的数据库编程】 JDBC 即 Java Database Connectivity (Java数据库连接),是一种用于执行 SQL 语句的 Java API。这个 API 由 java.sql.*,javax.sql.* …

零基础学SpringBoot(一)--初识SpringBoot

1. SpringBoot简介 SpringBoot 是Spring家族中的一个全新的框架,它用来简化Spring应用程序的创建和开发过程,也可以说Spring Boot能简化我们之前采用SSM(SpringMVC Spring MyBatis)框架进行开发的过程。 以前我们采用SSM框架进行开发的时候&#xff0c…

算法017:二分查找

二分查找. - 备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/binary-search/ 二分查找,其实是双指针的一种特殊情况,但是时间复杂度极低&#…