import os import pathlib import charset_normalizer if __name__ == "__main__": file_path = r"C:\test.txt" if not file_path or not os.path.isfile(file_path): raise FileNotFoundError(file_path) with open(file_path, 'r', encoding='cp1251', errors='ignore') as data_stream: result = data_stream.read().strip()[0:100] data_stream.close() print("'with open' result:") print("\t" + result.replace("\n", "\n\t")) results = charset_normalizer.from_path(pathlib.Path(file_path)) result = str(results.best()).strip()[0:100] print("'from_path' result:") print("\t" + result.replace("\n", "\n\t")) cp_isolation = ['cp866', 'cp1251', 'utf_8', 'utf_8_sig'] results = charset_normalizer.from_path(pathlib.Path(file_path), cp_isolation=cp_isolation) result = str(results.best()).strip()[0:100] print("'from_path with cp_isolation' result:") print("\t" + result.replace("\n", "\n\t"))