Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.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/4/video/2.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
在多个html文件上运行javascript_Javascript_Html - Fatal编程技术网

在多个html文件上运行javascript

在多个html文件上运行javascript,javascript,html,Javascript,Html,我有一个包含1000个html文件的文件夹 我必须使用xpath从每个html中删除某些节点。所以我制作了javascript。我无法通过firefox控制台打开每个文件并运行javascript 我正在使用linux,因此如何使用Javascript可以在linux服务器上运行 下面是用于访问nodejs中文件系统的javascript api 您还需要一个用于nodejs的xpath库。似乎有几个。 Nodejs有时会让新手感到困惑,因为虽然它是单线程的,但它也被设计为异步的,要求在信息

我有一个包含1000个html文件的文件夹

我必须使用xpath从每个html中删除某些节点。所以我制作了javascript。我无法通过firefox控制台打开每个文件并运行javascript


我正在使用linux,因此如何使用Javascript可以在linux服务器上运行

下面是用于访问nodejs中文件系统的javascript api

您还需要一个用于nodejs的xpath库。似乎有几个。


Nodejs有时会让新手感到困惑,因为虽然它是单线程的,但它也被设计为异步的,要求在信息可用时调用回调函数并立即返回。许多文件系统调用的名称中都有“sync”。这些是“同步”的,如果您的自动编辑应用程序大部分都是以同步样式编写的,则可能更合适。

使用任何服务器端语言都可能更容易做到这一点

您可以创建一个PHP文件,读取1000个HTML文件所在的目录,逐个加载、更改并保存它们

例如:

if ($handle = opendir('projects')) {
    while (false !== ($entry = readdir($handle))) {
      $file = file_get_contents($entry);
      $file = // make your changes here
      file_put_contents($entry, $file);
    }
  }
  closedir($handle);
}

这有助于通过node.js解决方案:

最好使用Python/Ruby库来呈现HTML文件并注入JavaScript。我最好的猜测是使用Selenium。我不想注入脚本。我想应用脚本并删除一些内容。你似乎不明白注入意味着什么。它只是解释了Selenium将在每个页面呈现之后添加JavaScript(这是一个自动的web浏览器)。注入JavaScript后,您可以将新处理的DOM存储在一个单独的文件夹中,或者只覆盖当前文件。Selenium为您提供了所有这些功能。好的,它在linux中可用吗?当然可以。你可以分享一个例子,让我们更好地了解你想要实现的目标吗?我会详细介绍一下。但是使用nodejs我可以调用一个文件并运行与dom相关的任务和相同的文件吗