如何修改已保存的HTML页面,高亮指定语句后保存为新HTML文件?
问题排查
1. re.sub使用逻辑错误
re.sub的正确语法为 re.sub(匹配规则, 替换内容, 原字符串),你的代码把原字符串和替换内容的位置完全写反了;同时re.sub不会修改原字符串,只会返回替换后的新字符串,你没有接收返回值,修改根本没有生效。另外正则分组引用符号是反斜杠\1,不是斜杠/1。
2. 写入文件的方式错误
mytext是你读取到的字符串类型数据,本身没有write方法,要写入内容到新文件,需要重新调用open打开输出文件,再把修改后的内容写入文件对象。
修正后的可运行代码
import re # 读取本地原始HTML文件 with open(r"C:\Users\Downloads\webpage.html", mode='rt', encoding='utf-8') as f: mytext = f.read() # 执行替换高亮,接收修改后的新字符串 modified_text = re.sub( r"(The HyperText Markup Language, or HTML)", r'<span style="color: red">\1</span>', mytext ) # 写入新文件 with open(r"C:\Users\Downloads\webpage_modif.html", mode='wt', encoding='utf-8') as f: f.write(modified_text)
内容的提问来源于stack exchange,提问作者ℕʘʘḆḽḘ
相关产品推荐
相关产品推荐

