logo
0
0
WeChat Login

文件名SEO优化工具

使用OpenAI API批量优化Excel文件中的文件名为SEO友好的关键词。

功能特点

  • 🚀 批量处理: 自动处理Excel文件中的所有文件名
  • 📝 智能跳过: 自动跳过已有关键词的行(B列不为空时跳过)
  • 📊 进度跟踪: 支持断点续传,中断后可继续处理
  • 📝 详细日志: 记录处理过程,包含时间、行号、文件名、关键词
  • 🔄 直接修改: 直接修改源Excel文件,无需创建新文件
  • 并发处理: 支持多线程并发,提高处理效率
  • 🛡️ 速率限制: 遵守API速率限制,避免被限制

安装依赖

pip install -r requirements.txt

快速开始

  1. 配置API密钥 编辑 filename_seo_optimizer.py 文件,将 openai_api_key 替换为你的实际API密钥

  2. 准备Excel文件

    • A列:原始文件名
    • B列:关键词(可为空,会自动填充;已存在内容的行会被跳过)
  3. 运行脚本

    python filename_seo_optimizer.py
    

工作原理

  • 直接修改源文件:脚本会直接读取并修改指定的Excel文件,无需创建新文件
  • 智能跳过:如果B列(关键词列)已存在内容,该行会被自动跳过,保持原有内容不变
  • 批处理保存:每处理100条数据会自动保存一次,防止数据丢失

配置说明

脚本顶部的 CONFIG 字典包含所有配置项:

CONFIG = {
    # 文件路径
    'input_file': 'filename.xlsx',           # Excel文件路径(直接修改此文件)
    'log_file': 'seo_optimizer.log',         # 日志文件

    # OpenAI API
    'openai_api_key': 'your-api-key',        # API密钥(必须设置)
    'openai_model': 'deepseek-ai/DeepSeek-V3.2',         # 模型选择
    'openai_base_url': 'https://api.openai.com/v1',      # API地址

    # 性能控制
    'max_workers': 5,                        # 并发数(3-5)
    'requests_per_second': 2,                # 每秒请求数(QPS)
    'batch_size': 100,                       # 每批处理数量
}

文件结构

.
├── filename_seo_optimizer.py       # 主程序
├── requirements.txt                # 依赖列表
├── .gitignore                      # Git忽略文件
├── README.md                       # 说明文档
├── filename.xlsx                   # Excel文件(需要自己准备)
└── seo_optimizer.log               # 日志文件(运行后生成)

日志格式

2024-01-08 10:30:15 - [INFO] - [处理中] 行号: 15/1000 | 文件名: 产品图片.jpg | 关键词:
2024-01-08 10:30:18 - [INFO] - [完成] 行号: 15/1000 | 文件名: 产品图片.jpg | 关键词: 产品展示-图片-质量
2024-01-08 10:30:20 - [INFO] - [跳过(B列已存在关键词)] 行号: 16/1000 | 文件名: 公司介绍.pdf | 关键词: 公司简介-企业介绍

重要提示

  1. 备份重要数据:脚本会直接修改Excel文件,请确保已备份重要数据
  2. B列跳过逻辑:如果B列(关键词列)已存在任何内容,该行将被跳过
  3. 断点续传:支持中断后继续处理,进度保存在 progress.json 文件中
  4. API费用:使用OpenAI API会产生费用,请合理设置QPS

迁移到其他系统

该工具设计为轻量级,易于迁移:

  1. 复制文件

    • filename_seo_optimizer.py - 主程序
    • requirements.txt - 依赖列表
  2. 安装依赖

    pip install pandas openai ratelimit
    
  3. 运行

    python filename_seo_optimizer.py
    

故障排除

恢复中断的处理

如果脚本中断,直接重新运行即可,会从上次位置继续。

清理进度文件

rm progress.json

查看实时日志

tail -f seo_optimizer.log

处理API错误

如果遇到API相关错误:

  1. 检查API密钥是否正确
  2. 检查网络连接
  3. 降低 requests_per_secondmax_workers 的值

License

MIT License

About

No description, topics, or website provided.
Language
Python70.8%
Shell29.3%