|-转 python报错 UnicodeEncodeError: 'gbk' codec can't encode character '\u2705'...
--- Logging error --- Traceback (most recent call last): File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\logging\__init__.py", line 1086, in emit stream.write(msg + self.terminator) UnicodeEncodeError: 'gbk' codec can't encode character '\u2705' in position 42: illegal multibyte sequence Call stack: File "<string>", line 1, in <module> File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\multiprocessing\spawn.py", line 116, in spawn_main exitcode = _main(fd, parent_sentinel) File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\multiprocessing\spawn.py", line 129, in _main return self._bootstrap(parent_sentinel) File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\multiprocessing\process.py", line 315, in _bootstrap self.run() File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\multiprocessing\process.py", line 108, in run self._target(*self._args, **self._kwargs) File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\site-packages\uvicorn\_subprocess.py", line 76, in subprocess_started target(sockets=sockets) File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\site-packages\uvicorn\server.py", line 61, in run return asyncio.run(self.serve(sockets=sockets)) File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\asyncio\runners.py", line 44, in run return loop.run_until_complete(main) File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\asyncio\base_events.py", line 634, in run_until_complete self.run_forever() File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\asyncio\base_events.py", line 601, in run_forever self._run_once() File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\asyncio\base_events.py", line 1905, in _run_once handle._run() File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\asyncio\events.py", line 80, in _run self._context.run(self._callback, *self._args) File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\site-packages\uvicorn\server.py", line 68, in serve config.load() File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\site-packages\uvicorn\config.py", line 467, in load self.loaded_app = import_from_string(self.app) File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\site-packages\uvicorn\importer.py", line 21, in import_from_string module = importlib.import_module(module_str) File "G:\ProgramData\miniconda3\envs\speaker-extractor\lib\importlib\__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1030, in _gcd_import File "<frozen importlib._bootstrap>", line 1007, in _find_and_load File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 680, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 850, in exec_module File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed File "D:\python\fastapi-speaker-extractor\app\main.py", line 39, in <module> logger.info("✅ WhisperX 模型加载成功!") Message: '✅ WhisperX 模型加载成功!' Arguments: () --- Logging error --- 后面这些是什么,是那里错误了吗
从报错信息来看,主要是日志输出时碰到了编码问题(UnicodeEncodeError: 'gbk' codec can't encode character '\u2705'...),再加上后面还有一些版本不兼容的提示。下面分点解释原因和解决办法:
1. 最直接的错误:日志编码不兼容(GBK → UTF-8)
Python 的logging模块默认会用系统的编码(Windows 下常是'gbk')往控制台写日志。而你的代码里用了 Unicode 字符(比如✅这个 emoji 或特殊符号),gbk编码不认识这种字符,就会抛出UnicodeEncodeError。
解决思路:
让 Python 日志用 UTF-8 编码输出,而不是系统默认的 GBK。
做法有很多种,比较常见的是在程序开头(或配置日志的地方)加上下面这样的代码,强制让标准输出的编码变成 UTF-8:
我的logging是自定义的:在项目根目录下的logger.py 内容是 import logging import os class CustomLogger: def __init__(self, name, log_file, level=logging.INFO): self.logger = logging.getLogger(name) self.logger.setLevel(level) # 创建一个文件处理器,写入日志文件 file_handler = logging.FileHandler(log_file) file_handler.setLevel(level) # 创建一个控制台处理器,输出到控制台 console_handler = logging.StreamHandler() console_handler.setLevel(level) # 定义日志格式 formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') file_handler.setFormatter(formatter) console_handler.setFormatter(formatter) # 将处理器添加到 Logger 对象 self.logger.addHandler(file_handler) self.logger.addHandler(console_handler) def get_logger(self): return self.logger 。要怎么改 “让 Python 日志用 UTF-8 编码输出,而不是系统默认的 GBK。”
你的CustomLogger类是自定义的日志封装,它内部使用了 Python 标准库的logging模块,并分别添加了一个文件处理器(FileHandler)和一个控制台处理器(StreamHandler)。...
浏览更多内容请先登录。
立即注册
更新于:2025-08-23 08:00:06
相关内容
python的selenium的用法整理
selenium3定位元素(包括父子,兄弟)及常见操作
使用Selenium自动验证滑块登录
Python 学习整理2
fastapi-speaker-extractor whisperx 项目报错 ValueError: The chosen ...
python报错 UnicodeEncodeError: 'gbk' codec can't encode character '\u...
python whisperx 报错 in load_align_model raise ValueError(f'The ch...
pyannote/embedding 模型是真难引入模型
AI和Python 学习整理
AudioSeparationGUI 对输入的音频,自动根据说话人进行分类 20250817
SoloSpeech 项目安装和运行测试 20250817
python 多项目部署 优先考虑用Anaconda
espnet 声音分离
ClearerVoice-Studio 安装测试遇到的问题,安装pysptk一直失败
uvr5 bs roformer 爆显存以及关于huggingface的国内镜像hf-mirror.com
用Kimi编程
Studio One 调试插件Techivation AI-Rack 一键智能混音
在hf-mirror.com模型镜像站用代码下载模型遇到报错 speaker-diarization模型不...
用腾讯元宝编程
Conda国内镜像源
数字对象标识符 (DOI)
在创建conda环境时,如果不指定Python版本,conda将不会默认安装Python。
whisperx 的使用 音频处理
Win10系统 Trae的使用 关于powershell报错: 因为在此系统上禁止运行脚本
warp的使用
AI编程工具比较
FastApi
python 学习中遇到的问题整理
没有使用asynccontextmanager ,但是报cannot import name 'asynccontextman...
python3.10.0+pyinstaller4.7打包,IndexError: tuple index out of range...
error: Microsoft Visual C++ 14.0 or greater is required.
安装conda搭建python环境(保姆级教程)
学习飞浆过程中遇到“缺少paddle.fluid”
[NLP实践01]simpletransformers安装和文本分类简单实现
primeqa 安装requirements时报错
sublime text下 Python 问题:TabError: inconsistent use of tabs and s...
uiautomation报错 No module named 'comtypes.stream' Can not load UIA...
解决无法加载UIAutomationCore.dll的报错
汉字目标点选识别-ddddocr(返回识别的内容和位置)
python 常用命令
opencv报错及解决:AttributeError: module ‘cv2‘ has no attribute ‘...
AttributeError: module 'cv2.cv2' has no attribute 'cv'
sublime text常用快捷键及多行列模式批量操作教程
python配置opencv环境后,读取图片,报错:can‘t open/read file: check f...
python代码整理(2022年4月-2024年3月)
Python和PHP获取百度url跳转的真实地址代码(2022年4月实测有效)
Pip/python-如何查看已安装的包有哪些版本?如何查看某个包存在哪些版本?pip...
用undetected_chromedriver代替selenium解决浏览器打不开网页
sublime text下 Python 问题:TabError: inconsistent use of tabs and s...
推荐内容