调用logging.conf, 报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x86 in position : illegal multibyte sequence

这个错误是由于你的代码中尝试以GBK编码解码文件,但文件中包含了非GBK编码的字符造成的。解决这个问题的办法是使用正确的编码方式打开和读取配置文件。

你可以尝试以下做法:

  1. 使用open()函数打开配置文件时,将encoding参数设置为正确的编码方式。例如,如果你的配置文件是使用UTF-8编码的,可以使用open(filename, encoding='utf-8')来打开文件。
  2. 确保你的配置文件本身使用正确的编码方式保存。可以通过在文本编辑器中选择正确的编码方式重新保存文件,例如UTF-8。

如果你不确定配置文件的编码方式,你可以尝试使用chardet库来自动检测文件的编码方式。你可以使用以下代码片段:

import chardet

def detect_encoding(filename):
    with open(filename, 'rb') as f:
        result = chardet.detect(f.read())
    return result['encoding']

encoding = detect_encoding(filename)
with open(filename, encoding=encoding) as f:
    # 读取配置文件的代码

这样可以动态检测配置文件的编码方式并正确地打开它。

希望这些信息对你有帮助!如果还有其他问题,请随时提问。