Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用nodejs下载外部网站(包括资源)_Javascript_Node.js_Cross Domain - Fatal编程技术网

Javascript 使用nodejs下载外部网站(包括资源)

Javascript 使用nodejs下载外部网站(包括资源),javascript,node.js,cross-domain,Javascript,Node.js,Cross Domain,我想下载一个网页,用nodejs说。这意味着我有一个静态页面的脱机副本。它必须下载资源(如样式、javascript文件、图像等),并将引用更新为本地引用 在任何情况下,我想要一个离线页面,一旦打开看起来完全像真正的页面。就像我在web浏览器中选择文件->保存时发生的一样 基本上我想复制 wget --page-requisites (尽管这不能正确下载css和图像) 背景是我想在外部网站上执行Javascript。由于跨域策略,这是(正确的)不可能的。为了避免这种情况,我只想下载网站并自己静

我想下载一个网页,用nodejs说。这意味着我有一个静态页面的脱机副本。它必须下载资源(如样式、javascript文件、图像等),并将引用更新为本地引用

在任何情况下,我想要一个离线页面,一旦打开看起来完全像真正的页面。就像我在web浏览器中选择文件->保存时发生的一样

基本上我想复制

wget --page-requisites
(尽管这不能正确下载css和图像)


背景是我想在外部网站上执行Javascript。由于跨域策略,这是(正确的)不可能的。为了避免这种情况,我只想下载网站并自己静态托管,执行我的Javascript分析代码,然后将其删除。

我正在寻找一种解决方案来解决这个问题:

像这样的包可以用来获取页面的所有脚本、链接、img等源URL。然后,您可以获取这些资源并将其保存到本地环境中,并用指向本地副本的新URL替换它们的src属性。然后,您可以对生成的HTML进行字符串化并将其保存。然后,只需在节点中静态地为包含目录提供服务

也许从节点内部运行
wget--page requisites
是最简单的解决方案

我很想知道这个问题的最终解决方案是什么。希望我说的话能有所帮助