如何通过强制另存为选项来保存网页的内容/文本

Posted

技术标签:

【中文标题】如何通过强制另存为选项来保存网页的内容/文本【英文标题】:How to save content/text of a web page by forcing save-as option 【发布时间】:2012-12-07 07:46:07 【问题描述】:

我想知道从网页中保存内容的最佳方式是什么。我的意思是通过单击链接或按钮来强制另存为选项。我经常发现 javascript 不是一个选项,因为它只适用于 IE,所以我认为它会更容易,因为 javascript 是基于客户端的。

现在,我想也许有一种方法可以在创建表单时使用 php,该表单将通过服务器站点查询重定向它以返回并强制另存为选项。我的主要目标是让保存隐私条款成为可能。我想避免使用 fpdf。如果有人能告诉我如何解决这个问题,我将不胜感激。

更新:

可以解释一下我想要达到的目标:

假设您有一个简单的网页,其中包含一些隐私政策文本,而没有其他内容。在页面顶部,您有两个选项。首先是打印选项,例如:

<a href="javascript:print()">print</a>

秒应该是这样的:

<a href="javascript:saveas()">save</a>

这样当您按下链接时,会弹出另存为对话框,您可以下载内容甚至页面以获取您自己的隐私政策。

希望现在很清楚。对不起。

【问题讨论】:

您要保存的页面是否由您自己托管? 你好,目前没有。也许有一天,但目前没有任何计划。 【参考方案1】:

如果您想在不使用 javascript 的情况下强制下载,只需通过添加未知目标在新选项卡中打开内容。

示例代码

<a href="whatever.com/download.zip" target="_new">click me</a>

这仅在您调用的页面提供下载时才有效,否则内容会显示。在这种情况下,您需要一个简单的 php 文件,它从页面中获取内容并自定义标题。

<?php
$content = file_get_contents($_GET["downloadurl"]);
header("Content-Type: application/octet-stream"); 
echo $content;
?>

更新

作为您编辑信息的更详细示例,您可以这样做:

PHP-文件“reader.php”

<?php
$content = file_get_contents($_GET["downloadurl"]);
header("Content-Type: application/octet-stream"); 
echo $content;
?>

HTML在页面“test.html

<a href="reader.php?downloadurl=http://yourwebsite.com/test.html" target="_new">Save website</a>

【讨论】:

file_get_source() 是什么? 我认为更重要的是使用Content-Disposition,但我确信这仍然有效 对不起,想说file_get_contents 你好,我认为这不是正确的方式。我试过了,但现在加载页面时会打开 savas 对话框?!这不是我想要的。我想让它在同一页面上保存按钮/链接文本,以从同一页面下载其内容。谢谢。 我真的不明白你的目标是什么,对不起。请进一步解释您的问题。单击链接时要开始下载吗?!

以上是关于如何通过强制另存为选项来保存网页的内容/文本的主要内容,如果未能解决你的问题,请参考以下文章

网页弹出窗口的内容怎么保存

360极速浏览器网页图片另存为,为啥会变成了链接保存下载

如何将一个网页以及包含的文件全部整站下载到本地电脑里?

js 如何在网页另存为 .txt格式的文件

怎么把浏览器的网页另存为mht格式的

如何批量保存网页