使用execjs執行js代碼報錯
報錯信息如下:
Exception in thread Thread-1:
Traceback (most recent call last):
File "E:\codes\python\lib\threading.py", line 917, in _bootstrap_inner
self.run()
File "E:\codes\python\lib\threading.py", line 865, in run
self._target(*self._args, **self._kwargs)
File "E:\codes\python\lib\subprocess.py", line 1238, in _readerthread
buffer.append(fh.read())
UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 41: illegal multibyte sequence
根據報錯信息知道是編碼的問題,執行subprocess.py時出錯,在pycharm中點擊報錯信息中的subprocess.py跳轉到相應的函數
解決方式:
在subprocess.py文件中,有個__init__()初始化函數,在該文件的656行,修改參數encoding='utf-8',程序運行不再報錯。