import os
import re
import json
def extract_keyword(filename):
"""从文件名中提取核心关键词"""
suffixes = ['攻略大全', '装备指南', 'npc有哪些', '攻略', '指南', '大全', '下载', '官网', '怎么玩', '怎么去', '在哪', '是什么', '怎么做', '怎么加', '好玩吗', '配置', '多少钱', '最低配置要求', '电脑配置', '配置要求', '中文版', '修改器', '秘籍', '补丁', '汉化补丁', '破解版', '豪华版', '激活序列号', '出招表', '技能', '皮肤', '任务', '副本', 'boss', 'BOSS', '地图', '怎么过', '怎么打', '怎么刷', '怎么获得', '怎么升级', '怎么加点', '怎么开', '怎么选', '怎么走', '怎么拿', '怎么找', '怎么用', '怎么开荒', '怎么搬砖', '怎么变现', '怎么冲']
name = filename.replace('.txt', '')
for suffix in suffixes:
name = name.replace(suffix, '')
name = re.sub(r',' + suffix, '', name)
name = re.sub(r',' + suffix, '', name)
name = name.strip()
name = re.sub(r'[,,、\s]+$', '', name)
name = re.sub(r'^[,,、\s]+', '', name)
if ',' in name:
parts = name.split(',')
name = parts[0].strip()
elif ',' in name:
parts = name.split(',')
name = parts[0].strip()
return name
def generate_seo_filename(keyword):
"""根据SEO最佳实践生成优化的文件名"""
seo_templates = [
'{keyword}攻略大全_最新详细教程指南',
'{keyword}新手入门攻略_从零开始详解',
'{keyword}玩法技巧_高手进阶指南2026',
'{keyword}完整攻略_装备技能全解析',
'{keyword}终极指南_从入门到精通教程',
'{keyword}详细攻略_新手必看技巧分享',
'{keyword}攻略教程_实用玩法全解析',
'{keyword}全面指南_技能装备详细攻略',
'{keyword}进阶攻略_高手技巧心得分享',
'{keyword}攻略大全_2026最新版本详解',
'{keyword}玩法指南_新手快速上手教程',
'{keyword}深度攻略_核心技巧全面解析',
'{keyword}攻略秘籍_隐藏技巧大揭秘',
'{keyword}完整教程_从新手到大神指南',
'{keyword}攻略汇总_实用技巧大全2026',
]
template = seo_templates[hash(keyword) % len(seo_templates)]
new_filename = template.replace('{keyword}', keyword) + '.txt'
new_filename = re.sub(r'[^\w\s\u4e00-\u9fff\-_\.]', '_', new_filename)
new_filename = new_filename.replace(' ', '_')
if len(new_filename) > 150:
new_filename = keyword + '_攻略大全指南.txt'
return new_filename
def main():
input_dir = '.'
txt_files = [f for f in os.listdir(input_dir) if f.endswith('.txt') and f not in ['process_files.py', 'seo_rename.py', 'apply_rename.py']]
print(f"找到 {len(txt_files)} 个txt文件")
keywords_dict = {}
for filename in txt_files:
keyword = extract_keyword(filename)
if keyword:
if keyword not in keywords_dict:
keywords_dict[keyword] = []
keywords_dict[keyword].append(filename)
unique_keywords = list(keywords_dict.keys())
print(f"提取到 {len(unique_keywords)} 个唯一关键词")
print("\n开始生成SEO优化的文件名...")
rename_map = {}
used_names = set()
for i, filename in enumerate(txt_files):
keyword = extract_keyword(filename)
new_filename = generate_seo_filename(keyword)
base_name = new_filename.replace('.txt', '')
counter = 1
while new_filename in used_names:
new_filename = base_name + f'_{counter}.txt'
counter += 1
used_names.add(new_filename)
rename_map[filename] = new_filename
if i < 30:
print(f"\n[{i+1}] 原文件名: {filename[:60]}...")
print(f" 关键词: {keyword}")
print(f" 新文件名: {new_filename[:60]}...")
print(f"\n... 共处理 {len(rename_map)} 个文件")
with open('rename_map.json', 'w', encoding='utf-8') as f:
json.dump(rename_map, f, ensure_ascii=False, indent=2)
print("\n文件名映射已保存到 rename_map.json")
print("\nSEO优化策略说明:")
print("- 使用长尾关键词格式(如'攻略大全_最新详细教程指南')")
print("- 包含年份标记(2026)增加时效性")
print("- 添加用户意图词(新手入门、高手进阶、从入门到精通)")
print("- 使用分隔符提高可读性")
print("\n请查看 rename_map.json 确认后,运行 apply_rename.py 执行重命名")
if __name__ == '__main__':
main()
seo_rename
本文摘要: importosimportreimportjsondefextract_keyword(filename):"""从文件名中提取核心关键词"""suffixes=['攻略大全','装备指南','npc有哪些','攻略','指南','大全','下载','官网','怎么玩','怎么去','在哪','是...
-- 展开阅读全文 --

暂无评论,13人围观