关键词批量替换整行工具有什么用处呢?
获取 /关键词/ 目录下的所有 .txt 文件。
读取每个文件的内容。
筛选掉包含用户指定内容的行。
将筛选后的内容写回原文件。
读取文件内容并筛选:读取每个文件的内容并筛选掉包含指定内容的行。
将筛选后的内容保存到新文件:将筛选后的内容写入
/筛选后/
目录中的新文件。
因为有多行需求,需要增加了以下功能:
用户在输入框中输入多行筛选内容,我们可以使用一个更灵活的输入方式。比如让用户在输入完成后按下特定的键(如 Enter 键)来结束输入。然后,我们可以将这些多行输入作为筛选条件。
每行一个筛选条件,输入完成后按 Enter 键两次结束输入。
工具还会:删除长度小于5个字符的行,要除行首尾的空白字符 (因为太短了的关键词拿来生成文章不太好收录)
源代码:
按上方的要求
import os def filter_lines(source_directory, target_directory, filter_texts): # 获取源目录中的所有 .txt 文件 txt_files = [f for f in os.listdir(source_directory) if f.endswith('.txt')] # 确保目标目录存在 os.makedirs(target_directory, exist_ok=True) for txt_file in txt_files: source_file_path = os.path.join(source_directory, txt_file) # 读取文件内容 with open(source_file_path, 'r', encoding='utf-8') as file: lines = file.readlines() # 筛选掉包含指定内容的行和长度小于5个字符的行 filtered_lines = [ line for line in lines if len(line.strip()) >= 5 and not any(filter_text in line for filter_text in filter_texts) ] # 构建目标文件路径 target_file_path = os.path.join(target_directory, txt_file) # 将筛选后的内容写入新文件 with open(target_file_path, 'w', encoding='utf-8') as file: file.writelines(filtered_lines) # 获取用户输入的多行要筛选掉的内容 print("请输入要筛选掉的内容,每行一个。输入完成后按 Enter 键两次结束输入:") filter_texts = [] while True: line = input() if line == "": break filter_texts.append(line) # 当前工作目录 current_work_dir = os.path.dirname(__file__) # 源目录路径 source_directory = os.path.join(current_work_dir, '关键词') # 目标目录路径 target_directory = os.path.join(current_work_dir, '筛选后') # 调用函数进行筛选 filter_lines(source_directory, target_directory, filter_texts) print(f"筛选后的文件保存在: {target_directory}")
本站资源来自会员发布以及互联网收集,不代表本站立场,如有侵犯你的权益请联系管理员,站内发信内容投诉联系 我们会第一时间进行审核删除。站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业途径!请用户仔细辨认内容的真实性,避免上当受骗!本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请在下载24小时内删除!
代哥网推 » 关键词批量替换整行工具,SEO必备
代哥网推 » 关键词批量替换整行工具,SEO必备