Skip to content

Commit 29be11b

Browse files
authored
Merge pull request #15 from UFAivovaurio/main
添加 [HTML 转 PDF 转换工具] 工具
2 parents f5d4da0 + e8c8529 commit 29be11b

4 files changed

Lines changed: 92 additions & 0 deletions

File tree

6.53 KB
Binary file not shown.

tools/html2pdf/README.md

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
# HTML 转 PDF 转换工具
2+
3+
基于 PDF API 服务封装的 Python 工具函数,支持将 HTML 内容转换为 PDF 文件。
4+
5+
## 一、项目介绍
6+
7+
### 1.1 核心功能
8+
9+
- **HTML 到 PDF 转换**:支持 HTML 字符串或 HTML 文件路径作为输入,转换为高质量的 PDF 文档。
10+
- **文件上传集成**:转换完成后可自动上传到指定服务器,支持自定义请求头。
11+
- **临时文件管理**:自动生成唯一命名的临时文件,并在处理完成后清理,避免磁盘空间占用。
12+
- **错误处理机制**:完善的异常捕获和错误信息提示,便于问题排查。
13+
14+
### 1.2 适用场景
15+
16+
- **报告生成**:将数据分析结果或报告从 HTML 格式转换为可打印的 PDF 文档。
17+
- **文档归档**:将网页内容或动态生成的 HTML 内容保存为 PDF 进行长期存储。
18+
- **内容分发**:在 Web 应用中提供 PDF 下载功能,增强用户体验。
19+
- **自动化流程**:集成到自动化工作流中,批量处理 HTML 到 PDF 的转换任务。
20+
21+
## 二、环境准备
22+
23+
### 2.1 依赖库
24+
25+
该工具基于 Python 标准库和常用第三方库构建。
26+
27+
| 依赖库 | 版本要求 | 用途说明 |
28+
| :--------- | :------------ | :--------------------- |
29+
| `requests` | ≥ 2.20.0 | 发送 HTTP 请求 |
30+
| `os` | Python 标准库 | 文件路径操作和系统接口 |
31+
| `uuid` | Python 标准库 | 生成唯一标识符 |
32+
| `datetime` | Python 标准库 | 时间戳生成 |
33+
34+
### 2.2 安装依赖
35+
36+
通过 `pip` 安装 `requests` 库:
37+
38+
```bash
39+
pip install requests
40+
```
41+
42+
------
43+
44+
## 三、使用说明
45+
46+
### 3.1 部署html-to-pdf服务
47+
48+
[html-to-pdf.tar](registry.cn-hangzhou.aliyuncs.com/functions_mk/html-to-pdf:latest)
49+
50+
```linux
51+
# 加载镜像
52+
docker load -i html-to-pdf.tar
53+
54+
# 启动
55+
docker run -d -p 6000:6000 --name convertpdf html-to-pdf
56+
```
57+
58+
### 3.2 参数说明
59+
60+
#### 启动参数
61+
62+
| 参数名 | 类型 | 说明 |
63+
| ---------------- | ---- | ------------ |
64+
| `upload_url` | str | 文件上传地址 |
65+
| `upload_headers` | str | 上传请求头 |
66+
| `api_url` | str | API 端点 |
67+
68+
##### 填写要求:
69+
70+
`upload_url`:填写当前使用的 MaxKB 地址。
71+
72+
`upload_headers`:填写 MaxKB 的 API Key。
73+
74+
`api_url`:参照 3.1 使用自己部署的 html-to-pdf 服务
75+
76+
#### 输入参数
77+
78+
| 参数名 | 类型 | 说明 |
79+
| -------------- | ---- | ------------------------- |
80+
| `html_content` | str | HTML 字符串内容或文件路径 |
81+
| `filename` | str | 输出文件名 |
82+
83+
## 四、注意事项
84+
85+
- **文件清理**:无论转换成功与否,都会自动清理临时生成的 PDF 文件
86+
- **上传认证**:上传功能需要有效的 Bearer Token,请确保 `upload_headers`参数正确
87+
- **字符编码**:处理 HTML 文件时使用 UTF-8 编码,确保中文等特殊字符正确显示

tools/html2pdf/data.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
name: HTML 转 PDF 转换工具
2+
tags:
3+
- 内容处理
4+
title: HTML 转 PDF 转换工具
5+
description: 基于 PDF API 服务封装的 Python 工具函数,支持将 HTML 内容转换为 PDF 文件。

tools/html2pdf/logo.png

1.23 KB
Loading

0 commit comments

Comments
 (0)