首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Python对多个HTML文件进行批量查找和替换?

如何使用Python对多个HTML文件进行批量查找和替换?
EN

Stack Overflow用户
提问于 2021-09-23 09:36:47
回答 2查看 38关注 0票数 0

我经常有包含10-20个HTML文件的文件夹需要更新。现在,我在一个文本编辑器中打开每个文件,并对每个文件使用5-10次查找和替换。

如何在所有20个文件中搜索X,如果找到X,则将其替换为Y?

EN

回答 2

Stack Overflow用户

发布于 2021-09-23 09:51:08

一个简单的解决方案是首先创建一个列表,其中包含您尝试更改的所有文件的位置,例如使用glob

代码语言:javascript
复制
import os
import glob
base_directory = os.path.join('your', 'path', 'here')
all_html_files = glob.glob(base_directory + '*.html', recursive=True)

现在,有了这个列表,您就可以简单地遍历它并分别对每个文件进行操作:

代码语言:javascript
复制
for file in all_html_files:

    with open(file, 'r') as f:
        raw_file = f.read()
    
    # do your replacing here    
    processed_file = raw_file.replace('foo', 'bar')

    with open(file, 'w') as f:
        f.write(processed_file)
票数 1
EN

Stack Overflow用户

发布于 2021-09-23 10:06:35

如果您使用的是python3.4或更高版本,则可以使用pathlib内置模块执行此任务,如下所示

代码语言:javascript
复制
import pathlib
for p in pathlib.Path("<path_to_your_dir_here>").rglob("*.html"):
    text = p.read_text()
    text = text.replace("old", "new")
    p.write_text(text)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69297556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档