需要一个脚本或软件来一次修改大量html文件

发布于 2024-12-21 13:28:19 字数 409 浏览 1 评论 0原文

我有大约 3400 个树形结构文件(大约 80% 是 html 文件)。

  1. 我需要修改每个 html 文件以删除

    样式和旧的东西(如字体属性)并添加另一种样式。

  2. 我需要更改 html 中所有链接的根目录。例如,在 href 属性中将 /old/path/ 更改为 /new/path 。
  3. 我需要删除一些链接。例如,需要删除指向 google.com 的链接,因此 as google said 应该只是 "正如谷歌所说”。

有没有任何软件可以为我做到这一点? 可以制作脚本吗?

我不知道如何编写脚本来使其工作,我认为这可能是最快的方法...有人想帮助我吗?

谢谢 !

I have about 3400 files in a tree structure (about 80% are html files).

  1. I need to modify every html file to remove

    style and old things like font attribute and add another style.

  2. I need to change the root of all links that are in the html. e.g. change /old/path/ to /new/path at the href attribute.
  3. I need to remove some links. e.g. links that points to google.com need to be removed, so <a href="http://www.google.com">as google said</a> should be only "as google said".

Is there any software that can do this for me?
Is it possible to make a script?

I have no knowledge about scripting for this to work, I thing this could be the fast way... anybody wants to help me?

Thanks !

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

御弟哥哥 2024-12-28 13:28:19

我将设置一个脚本,打开一个 HTML 文件,使用可靠的 HTML 解析器解析它(BeautifulSoup 就是一个很好的例子),然后以两种方式之一遍历它:在 SAX 模型中,编写代表重写规则或在 DOM 模型中的目标,将规则编写为 XPath 查询并在匹配的 DOM 节点上执行操作。

然后只需在所有 HTML 文件上运行该脚本即可。

I'd set up a script that opens a just single HTML file, parses it with a reliable HTML parser (BeautifulSoup comes to mind as a great example) and then traverses it in one of two ways: in the SAX model, writing functions representing the targets for your rewriting rules or in the DOM model, writing your rules as XPath queries and performing actions on matching DOM nodes.

Then just run the script on all your HTML files.

北恋 2024-12-28 13:28:19
  1. 做好备份!
  2. 选择一种脚本语言
  3. 了解如何给出递归文件列表
  4. 了解如何读取文件内容并保存文件
  5. 打开所有文件并将函数应用于每个文件的内容
  6. 该函数应该是您刚才描述的多个步骤的列表并且应该将新数据作为其返回值
  7. 将数据保存回文件

通常在大多数语言中搜索和替换都很容易。如果您需要它进行条件解析,您可能需要 xml/html 解析器或者可能需要学习正则表达式。最好先确保它适用于 1 个文件;)。

  1. Make a backup!
  2. pick a scripting language
  3. find out how to give a recursive file listing
  4. learn how to read the contents of files and save files
  5. open all files and apply a function to the contents of each file
  6. the function should be the list of the multiple steps you just described and should have the new data as its return value
  7. save the data back to the file

usually search and replace is easy in most languages. if you need it to where you have conditional parsing you may need an xml/html parser or may need to learn regular expressions. It's always better to make sure it works for 1 file first ;).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文