UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xac in position 244: illegal multibyte sequence

前言:这个是使用execjs加载js文件时出现的报错,参考解决方法之前先看看和你遇见的问题是否一样。有些人百度解决问题上来一通操作,也不看对不对症,解决不了就骂人我也是服辣

一般遇见编码问题先看看代码里写没写encoding='utf-8',没写的话写加上试试。当然,我遇到的问题跟这个没关系

解决这个报错有两种方法

方法一简单粗暴,一劳永逸

Python库中的这个subprocess.py文件,有个方法的encoding参数默认值是None,改成'utf-8'

(点文件名进入,搜索encoding=none)

UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xac in position 244: illegal multibyte sequence_第1张图片

改完再运行就OK了

方法二每次在用到读文件的时候,写代码给 subprocess 加上encoding = 'utf-8'

import subprocess
from functools import partial
subprocess.Popen = partial(subprocess.Popen, encoding="utf-8")

UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xac in position 244: illegal multibyte sequence_第2张图片

这段代码一定要写在  import execjs  之前 

你可能感兴趣的:(python,爬虫)