'UnicodeDecodeError: ‘utf-8’ can’t decode byte 0x90 in position 4024984: invalid start byte
I’m running a subprocess in full trace mode and displaying it using logger.info()
> std = subprocess.run(subprocess_cmd, shell=True, > universal_newlines=True, stdout=subprocess.PIPE, > stderr=subprocess.PIPE) > > all_stdout = all_stdout + std.stdout + ‘\n’ all_stderr = all_stderr + > std.stderr + ‘\n’ > > logger.info(‘\nstdout:\n’ + all_stdout + ‘\nstderr:\n’ + all_stderr)
But I’m getting the below error when the subprocess is getting printed.
UnicodeDecodeError: ‘utf-8’ codec can’t decide byte 0x90 in position 4024984:invalid start byte
I have tried giving universal_lines as False but it throws TypeError: must be str, not bytes.
I have also tried this - std = subprocess.run(subprocess_cmd, shell=True, stdout=subprocess.PIPE,
> stderr=subprocess.PIPE, env=environ, encoding=‘utf-8’)
This gives me same UnicodeDecodeError.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
