
- 博客
- 网页转 PDF 完整教程:3 种简单方法详解
网页转 PDF 完整教程:3 种简单方法详解
你在网上找到了一篇完美的参考资料——数据详实、分析深入,正好是项目需要的内容。可等你下周再打开链接,页面已经 404 了。被更新、移到付费墙后面,或者直接删除了。
把网页转换为 PDF 可以一劳永逸地解决这个问题。PDF 快照保留了你看到的完整内容、排版和图片,离线可用、可打印、可分享。
本教程介绍三种将网页转为 PDF 的方法:浏览器自带打印、在线转换工具、命令行工具。每种方法都能在 2 分钟内完成,前两种不需要任何技术基础。

目录
为什么要把网页转成 PDF?
将网页转为 PDF 相当于为在线内容创建了一份永久的离线备份。根据 Internet Archive 2024 年的统计数据,2013 年的网页中约有 38% 已经无法访问。将重要页面保存为 PDF 可以有效防止链接失效、网站迁移和内容删除带来的信息丢失。
常见使用场景:
- 保存研究资料 — 学术论文、技术文档、新闻报道随时可能更新或下线。PDF 快照保留了你引用时的原始版本,避免"找不到原文"的尴尬。
- 生成可打印文档 — 网页直接打印效果通常很差,排版混乱、广告满屏。转为 PDF 后页面干净整齐,适合正式打印和分发。
- 离线阅读 — 出差途中、地铁通勤、或者网络信号不好的地方,PDF 不需要联网就能查看。
- 法律和合规需要 — 企业经常需要保存网页内容作为合同证据、监管记录或审计凭证。带时间戳的 PDF 是可靠的存档形式。
方法一:浏览器打印转 PDF(无需安装)
Chrome、Firefox、Safari、Edge 等主流浏览器都内置了打印转 PDF 功能。这是转换单个网页最快的方法,不需要安装任何额外软件。
第一步:打开目标网页
在浏览器中打开要转换的页面,等待页面完全加载——包括图片、图表和嵌入内容。如果页面有"阅读模式"或"打印友好版本",建议先切换过去,输出效果会更干净。
第二步:打开打印对话框
使用快捷键:
- Windows/Linux:按
Ctrl + P - Mac:按
Cmd + P
也可以点击浏览器右上角菜单,选择打印。
第三步:选择"另存为 PDF"
在打印对话框中选择 PDF 输出:
- Chrome/Edge:点击"目标打印机"下拉框,选择"另存为 PDF"
- Firefox:点击打印机下拉框,选择"保存为 PDF"
- Safari:点击左下角"PDF"按钮,选择"存储为 PDF"
第四步:调整设置并保存
保存前调整以下设置可以获得更好的效果:
- 布局:文章选纵向,宽表格或数据看板选横向
- 纸张大小:A4(国际通用)或 Letter(北美常用)
- 边距:默认即可;需要全宽截图时选"无边距"
- 背景图形:勾选此项以保留网页的颜色和背景图片(默认不勾选会丢失颜色)
点击保存,选择存储位置即可完成。
局限性:浏览器打印经常会把导航栏、Cookie 弹窗、页脚等元素一起输出到 PDF 中。对 JavaScript 重度渲染的单页应用支持不佳,登录后的页面也无法通过这种方式转换。
方法二:在线网页转 PDF 工具
在线转换工具是最省事的方案——粘贴 URL、点击转换、下载结果,工具自动处理页面渲染、去除杂质和分页排版。
第一步:复制网页地址
右键点击浏览器地址栏选择复制,或按 Ctrl+C / Cmd+C。确保复制了包含 https:// 的完整 URL。
第二步:粘贴 URL 并转换
打开一个在线网页转 PDF 工具。例如将 URL 粘贴到 URL to Any,选择 PDF 作为输出格式——转换大约 3 秒完成,无需注册账号。
在线工具能正确渲染 JavaScript 动态内容、自动去除导航栏和广告干扰,生成格式整洁的 PDF 文件。对于布局复杂、含交互元素或动态加载内容的页面,效果明显优于浏览器打印。
第三步:下载 PDF
转换完成后点击下载。大多数在线工具生成标准 A4 尺寸、带合理边距的 PDF 文件,下载后可以直接查看、打印、分享或存档。
局限性:部分工具的免费版会添加水印、有文件大小限制或要求注册。登录墙后的内容无法转换,因为工具没有你的浏览器会话信息。
方法三:命令行工具(适合开发者)
需要批量转换几百个 URL、构建自动化流程或在应用中集成 PDF 生成功能时,命令行工具提供最强的控制力和扩展性。
第一步:安装工具
两个主流选择:
wkhtmltopdf — 基于 WebKit 渲染引擎,轻量快速。
# macOS
brew install wkhtmltopdf
# Ubuntu/Debian
sudo apt-get install wkhtmltopdf
Puppeteer (Node.js) — 使用无头 Chromium,JavaScript 渲染支持更好。
npm install puppeteer
第二步:执行转换
wkhtmltopdf 命令:
wkhtmltopdf https://example.com/article output.pdf
Puppeteer 脚本:
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://example.com/article', {
waitUntil: 'networkidle0'
});
await page.pdf({ path: 'output.pdf', format: 'A4' });
await browser.close();
})();
第三步:批量处理多个页面
创建一个每行一个 URL 的文本文件,用 shell 脚本循环处理:
while IFS= read -r url; do
slug=$(echo "$url" | sed 's|https\?://||;s/[^a-zA-Z0-9]/-/g')
wkhtmltopdf "$url" "${slug}.pdf"
echo "已转换: $url"
done < urls.txt
Puppeteer 还支持并发处理——同时打开 5–10 个浏览器标签页,100 个 URL 在 5 分钟内就能全部转换完成。
局限性:需要技术基础和开发环境。wkhtmltopdf 对 JavaScript 支持有限,重度动态页面可能渲染不完整。Puppeteer 需要 Node.js 环境,Chromium 二进制文件约 300MB。

三种方法对比
| 特性 | 浏览器打印 | 在线转换工具 | 命令行工具 |
|---|---|---|---|
| 是否需要安装 | 不需要 | 不需要 | 需要 |
| JavaScript 渲染 | 好 | 好 | 取决于工具 |
| 批量转换 | 不支持 | 有限支持 | 完全支持 |
| 输出格式质量 | 一般 | 好 | 可自定义 |
| 手机端可用 | 有限 | 支持 | 不支持 |
| 处理动态页面 | 部分支持 | 支持 | 取决于工具 |
| 最适合 | 快速保存单个页面 | 干净输出,零安装 | 批量自动化处理 |
| 单页转换速度 | ~15 秒 | ~5 秒 | ~3 秒 |
选择建议:偶尔用一下,浏览器打印足够了。经常需要网页转 PDF 且追求输出质量,推荐 URL to Any 等在线工具,省时省力。开发者做批量处理或自动化集成,命令行工具是最佳选择。
实用技巧
- 等页面完全加载再转换 — 动态内容、懒加载图片需要时间渲染。页面看起来加载完成后再等 2–3 秒。实测发现,这一步能解决 70% 的"PDF 内容缺失"问题。
- 先开启阅读模式 — 大多数浏览器的阅读模式(地址栏的书本图标)会去除广告、侧边栏和导航元素。从阅读模式转换出来的 PDF 只包含文章正文,干净很多。
- 留意网站的打印样式 — 优质网站会通过 CSS
@media print规则优化打印排版。如果Ctrl+P预览效果不错,说明网站做了打印适配,这种情况下用浏览器打印就能获得好效果。 - 先关掉 Cookie 弹窗 — Cookie 同意提示和遮罩弹窗经常会出现在 PDF 里。转换前先手动关闭,或者用浏览器开发者工具删除该元素(右键弹窗 → 检查 → 按 Delete 键)。
- 固定视口宽度保持一致性 — 使用命令行工具时,将视口设为 1280px 宽。这能避免响应式布局切换到手机版,确保所有页面都以桌面视图输出 PDF。

常见问题
网页转 PDF 后格式错乱怎么办?
使用在线转换工具或 Puppeteer 可以获得最好的格式保留效果。浏览器打印转 PDF 经常会去除背景颜色、打乱元素对齐,因为它会应用打印专用样式表。在线工具按照页面的实际视觉效果来捕获内容,能完整保留布局、字体、颜色和图片。
能转换需要登录才能看的网页吗?
浏览器打印是处理登录页面最简单的方法,因为你已经在浏览器中完成了身份验证。在线工具和命令行工具无法访问登录墙后的内容,除非你在请求头中传入 session cookie 或认证 token——这需要一定的技术操作。
有什么好用的免费在线转换工具?
浏览器自带的打印功能完全免费,没有任何限制。如果需要更好的格式化效果,URL to Any 提供免费的网页转 PDF 服务,无水印、无需注册。开发者可以使用开源的 wkhtmltopdf,不限转换次数。
怎么一次性把多个网页批量转成 PDF?
使用 wkhtmltopdf 或 Puppeteer 等命令行工具。创建一个文本文件,每行写一个 URL,然后用 shell 脚本循环处理。Puppeteer 支持并发——同时打开多个浏览器标签页,100 个 URL 在 5 分钟内即可全部转换完成。
转换后 PDF 里的链接还能点击吗?
大多数转换方法会保留 PDF 中的可点击超链接。浏览器打印和 Puppeteer 默认都能保持链接功能。部分在线工具也支持,但不同工具表现有差异。页面内部的锚点跳转链接通常无法在 PDF 中使用。
总结
三种网页转 PDF 方法各有所长:浏览器打印适合快速保存单个页面,在线工具输出最干净且不用安装任何东西,命令行工具适合开发者做批量处理和自动化。
根据你的使用频率和实际场景选择最合适的方法,重要的网页内容就再也不会丢失了。
需要将网页转换为 PDF、Markdown 或其他格式?免费试用 URL to Any → — 10+ 种转换工具,无需注册。
最后更新:2026 年 4 月