Python 批量修改 NFO 文件内容

本文将提供 Python 代码,实现批量修改指定目录下所有 NFO 文件的内容,将原文件第 9-11 行的内容替换为新的格式,方便用户整理和管理 NFO 文件。

目标:

将原 .nfo 文件中第 9-11 行的以下内容:

***
[COVER](https://imagetwist.com/16lahx82t88t/测试.jpg) / [SCREEN](https://imagetwist.com/nkoctef3mmgh/测试1.jpg)
***

修改为:

[COVER] / [SCREEN]
https://s10.imagetwist.com/th/56520/测试.jpg
https://imagetwist.com/nkoctef3mmgh/测试1.jpg

代码实现:

import os

def modify_nfo_file(file_path):
    with open(file_path, 'r', encoding='utf-8') as f:
        lines = f.readlines()

    # 修改第9-11行的内容
    lines[8] = '[COVER] / [SCREEN]
'
    cover_url = lines[10].split('(')[1].split(')')[0]
    lines[10] = 'https://s10.imagetwist.com/th/56520/' + cover_url.split('/')[-1] + '
'
    with open(file_path, 'w', encoding='utf-8') as f:
        f.writelines(lines)

# 指定目录下所有的.nfo文件
directory = 'test_dir'
for file_name in os.listdir(directory):
    if file_name.endswith('.nfo'):
        file_path = os.path.join(directory, file_name)
        modify_nfo_file(file_path)

代码解释:

  1. **导入 os 模块:**用于文件操作,例如遍历目录和读取文件内容。
  2. 定义 modify_nfo_file 函数:
    • 接收文件路径 file_path 作为参数。
    • 使用 open 函数以 utf-8 编码打开文件,并读取所有行到 lines 列表中。
    • 修改 lines 列表中第 9-11 行的内容。
    • 使用 open 函数以 utf-8 编码打开文件,并将修改后的内容写入文件。
  3. 遍历指定目录:
    • 使用 os.listdir 获取 test_dir 目录下所有文件的文件名。
    • 判断文件名是否以 .nfo 结尾,如果是则调用 modify_nfo_file 函数进行修改。

使用方法:

  1. 将代码保存为 .py 文件,例如 modify_nfo.py
  2. 将代码中的 test_dir 替换为实际需要修改的目录路径。
  3. 在命令行中运行 python modify_nfo.py

注意:

  • 代码中默认读取和写入文件的编码为 utf-8,如果文件使用其他编码,需要修改代码中的编码参数。
  • 代码中假设 NFO 文件中第 9-11 行的格式固定,如果格式不固定,需要修改代码逻辑。
  • 本代码仅供参考,实际使用时需要根据具体需求进行修改。
Python 修改 NFO 文件内容 - 批量处理指定目录下的 NFO 文件

原文地址: https://www.cveoy.top/t/topic/owHz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录