Pipreqs:UnicodeDecodeError:'charmap'编解码器无法解码位置 1206 中的字节 0x98:字符映射到 <undefined>

kra*_*337 11 python character-encoding python-unicode anaconda

当我使用时pipreqs,我遇到了这个问题。我使用 anaconda 和俄语 Windows。

root@DESKTOP-ETLLRI1 C:\Users\root\Desktop\resumes
$ pipreqs C:\Users\root\Desktop\resumes
Traceback (most recent call last):
  File "C:\Users\root\Anaconda3\Scripts\pipreqs-script.py", line 9, in <module>
    sys.exit(main())
  File "C:\Users\root\Anaconda3\lib\site-packages\pipreqs\pipreqs.py", line 396, in main
    init(args)
  File "C:\Users\root\Anaconda3\lib\site-packages\pipreqs\pipreqs.py", line 341, in init
    extra_ignore_dirs=extra_ignore_dirs)
  File "C:\Users\root\Anaconda3\lib\site-packages\pipreqs\pipreqs.py", line 75, in get_all_imports
    contents = f.read()
  File "C:\Users\root\Anaconda3\lib\encodings\cp1251.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x98 in position 1206: character maps to <undefined>
Run Code Online (Sandbox Code Playgroud)

sna*_*erb 28

您可以传递一个编码参数来pipreqs设置用于打开文件的编码。

Python3 文件通常编码为 utf-8,因此执行

pipreqs --encoding=utf8 C:\Users\root\Desktop\resumes

  • 我必须设置一个参数来忽略我的环境以及指定 utf8 的参数。https://github.com/bndr/pipreqs/issues/214 (2认同)