我是sc2reader的新手。我尝试加载一个回放文件,但是收到了以下错误。我也尝试了不同的回放文件,它们都可以被SC2播放。我的代码如下:
from sc2reader.factories import SC2Factory
path = 'D:/Code/Test/replays/LerilakCrest.SC2Replay'
sc2 = SC2Factory()
replay = sc2.load_replay(path)
print('done')
错误信息:
Traceback (most recent call last):
File "D:\Program Files (x86)\JetBrains\PyCharm Community Edition 4.5.4\helpers\pydev\pydevd.py", line 2358, in <module>
globals = debugger.run(setup['file'], None, None, is_module)
File "D:\Program Files (x86)\JetBrains\PyCharm Community Edition 4.5.4\helpers\pydev\pydevd.py", line 1778, in run
pydev_imports.execfile(file, globals, locals) # execute the script
File "D:/Code/Test/read.py", line 9, in <module>
replay = sc2.load_replay(path)
File "D:\Program Files (x86)\Python 2.7\lib\site-packages\sc2reader\factories\sc2factory.py", line 85, in load_replay
return self.load(Replay, source, options, **new_options)
File "D:\Program Files (x86)\Python 2.7\lib\site-packages\sc2reader\factories\sc2factory.py", line 137, in load
return self._load(cls, resource, filename=filename, options=options)
File "D:\Program Files (x86)\Python 2.7\lib\site-packages\sc2reader\factories\sc2factory.py", line 146, in _load
obj = cls(resource, filename=filename, factory=self, **options)
File "D:\Program Files (x86)\Python 2.7\lib\site-packages\sc2reader\resources.py", line 262, in __init__
self._read_data(data_file, self._get_reader(data_file))
File "D:\Program Files (x86)\Python 2.7\lib\site-packages\sc2reader\resources.py", line 592, in _read_data
self.raw_data[data_file] = reader(data, self)
File "D:\Program Files (x86)\Python 2.7\lib\site-packages\sc2reader\readers.py", line 33, in __call__
) for i in range(data.read_bits(5))],
File "D:\Program Files (x86)\Python 2.7\lib\site-packages\sc2reader\decoders.py", line 252, in read_aligned_string
return self._buffer.read_string(count, encoding)
File "D:\Program Files (x86)\Python 2.7\lib\site-packages\sc2reader\decoders.py", line 108, in read_string
return self.read_bytes(count).decode(encoding)
File "D:\Program Files (x86)\Python 2.7\lib\encodings\utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8'编解码器无法解码位置0上的字节0xff:起始字节无效
File "D:\Program Files (x86)\Python 2.7\lib\site-packages\sc2reader\resources.py", line 255, in __init__ raise exceptions.MPQError("Unable to construct the MPQArchive", e) sc2reader.exceptions.MPQError: (u'Unable to construct the MPQArchive', ValueError('Invalid file header.',))
- YNR