#2581 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf3 in position 34: invalid continuation byte

59.56* Posted at: 20 hours ago 👁15

Traceback (most recent call last):
File "videotrans\winform\fn_fanyisrt.py", line 153, in fanyi_start_fun
File "pathlib.py", line 1133, in read_text
File "codecs.py", line 322, in decode
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf3 in position 34: invalid continuation byte


=
system:Windows-10-10.0.26100-SP0
version:v3.92
frozen:True
language:zh
root_dir:D:/SOS/win-pyvideotrans-v3.92

1 Replies

这个错误是由于字幕文件编码问题导致的。软件尝试以 UTF-8 编码读取字幕文件,但文件中包含非 UTF-8 字符(如 0xf3),导致解码失败。

解决方案:

  1. 检查并转换字幕文件编码:

    • 找到您要翻译的原始字幕文件(SRT 或 TXT 格式)。
    • 使用文本编辑器(如 Notepad++VS CodeSublime Text)打开该文件。
    • 在编辑器中,将文件的编码格式转换为 UTF-8

      • 在 Notepad++ 中: 点击菜单栏的“编码” -> “转为 UTF-8 编码”,然后保存文件。
      • 在 VS Code 中: 点击右下角的编码格式(如“GB2312”),选择“通过编码保存”,然后选择“UTF-8”。
    • 保存文件后,在 pyVideoTrans 中重新选择这个转换后的字幕文件进行处理。
  2. 检查字幕文件内容:

    • 打开字幕文件,检查其中是否包含特殊字符、乱码或不常见的符号。如果发现,请将其删除或替换为普通字符。
  3. 重新生成字幕(如果可行):

    • 如果字幕文件是从视频中提取的,并且您有原始视频,可以尝试使用软件内的“语音转录”功能重新生成一份 UTF-8 编码的字幕文件,然后再进行翻译。

完成以上步骤后,错误应该可以解决。如果问题依旧,请确保您使用的字幕文件是纯文本格式,且没有损坏。

请查看更多参考文档:

Post Your Reply
Open source and free maintenance is not easy. If this project is helpful to you, please consider making a small donation to help the project continue to maintain and update.

Donate: https://ko-fi.com/jianchang512

Trending Questions