报的编码问题,其实不是:
解决方法:
pipreqs --ignore .venv --force
--ignore: 忽略执行
--force : 强制覆盖requirements.txt的内容
解决过程
1.执行命令:
pipreqs ./ --encoding=utf-8 --force
2.报错如下:
INFO: Not scanning for jupyter notebooks.
<unknown>:165: SyntaxWarning: invalid escape sequence '\S'
<unknown>:166: SyntaxWarning: invalid escape sequence '\['
<unknown>:207: SyntaxWarning: invalid escape sequence '\['
<unknown>:456: SyntaxWarning: invalid escape sequence '\S'
<unknown>:37: SyntaxWarning: invalid escape sequence '\Z'
<unknown>:68: SyntaxWarning: invalid escape sequence '\A'
<unknown>:662: SyntaxWarning: invalid escape sequence '\('
<unknown>:663: SyntaxWarning: invalid escape sequence '\)'
<unknown>:1349: SyntaxWarning: invalid escape sequence '\]'
<unknown>:1352: SyntaxWarning: invalid escape sequence '\]'
<unknown>:1354: SyntaxWarning: invalid escape sequence '\]'
<unknown>:1357: SyntaxWarning: invalid escape sequence '\]'
<unknown>:1541: SyntaxWarning: invalid escape sequence '\ '
<unknown>:1876: SyntaxWarning: invalid escape sequence '\ '
<unknown>:31: SyntaxWarning: invalid escape sequence '\s'
<unknown>:79: SyntaxWarning: invalid escape sequence '\s'
<unknown>:1: SyntaxWarning: invalid escape sequence '\_'
<unknown>:212: SyntaxWarning: invalid escape sequence '\d'
<unknown>:293: SyntaxWarning: invalid escape sequence '\d'
<unknown>:429: SyntaxWarning: invalid escape sequence '\s'
<unknown>:1945: SyntaxWarning: invalid escape sequence '\d'
<unknown>:957: SyntaxWarning: invalid escape sequence '\?'
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "D:\Code\Python\flask-api\.venv\Scripts\pipreqs.exe\__main__.py", line 7, in <module>
File "D:\Code\Python\flask-api\.venv\Lib\site-packages\pipreqs\pipreqs.py", line 609, in main
init(args)
File "D:\Code\Python\flask-api\.venv\Lib\site-packages\pipreqs\pipreqs.py", line 533, in init
candidates = get_all_imports(
^^^^^^^^^^^^^^^^
File "D:\Code\Python\flask-api\.venv\Lib\site-packages\pipreqs\pipreqs.py", line 136, in get_all_imports
contents = read_file_content(file_name, encoding)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Code\Python\flask-api\.venv\Lib\site-packages\pipreqs\pipreqs.py", line 181, in read_file_content
contents = f.read()
^^^^^^^^
File "<frozen codecs>", line 322, in decode
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb1 in position 81: invalid start byte
3.再次执行命令:
pipreqs ./ --encoding=iso-8859-1 --force
4.再次报错如下:
INFO: Not scanning for jupyter notebooks.
<unknown>:165: SyntaxWarning: invalid escape sequence '\S'
<unknown>:166: SyntaxWarning: invalid escape sequence '\['
<unknown>:207: SyntaxWarning: invalid escape sequence '\['
<unknown>:456: SyntaxWarning: invalid escape sequence '\S'
<unknown>:37: SyntaxWarning: invalid escape sequence '\Z'
<unknown>:68: SyntaxWarning: invalid escape sequence '\A'
<unknown>:662: SyntaxWarning: invalid escape sequence '\('
<unknown>:663: SyntaxWarning: invalid escape sequence '\)'
<unknown>:1349: SyntaxWarning: invalid escape sequence '\]'
<unknown>:1352: SyntaxWarning: invalid escape sequence '\]'
<unknown>:1354: SyntaxWarning: invalid escape sequence '\]'
<unknown>:1357: SyntaxWarning: invalid escape sequence '\]'
<unknown>:1541: SyntaxWarning: invalid escape sequence '\ '
<unknown>:1876: SyntaxWarning: invalid escape sequence '\ '
<unknown>:31: SyntaxWarning: invalid escape sequence '\s'
<unknown>:79: SyntaxWarning: invalid escape sequence '\s'
<unknown>:1: SyntaxWarning: invalid escape sequence '\_'
<unknown>:212: SyntaxWarning: invalid escape sequence '\d'
<unknown>:293: SyntaxWarning: invalid escape sequence '\d'
<unknown>:429: SyntaxWarning: invalid escape sequence '\s'
<unknown>:1945: SyntaxWarning: invalid escape sequence '\d'
<unknown>:957: SyntaxWarning: invalid escape sequence '\?'
ERROR: Failed on file: ./.venv\Lib\site-packages\pip\_vendor\pyparsing\unicode.py
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "D:\Code\Python\flask-api\.venv\Scripts\pipreqs.exe\__main__.py", line 7, in <module>
File "D:\Code\Python\flask-api\.venv\Lib\site-packages\pipreqs\pipreqs.py", line 609, in main
init(args)
File "D:\Code\Python\flask-api\.venv\Lib\site-packages\pipreqs\pipreqs.py", line 533, in init
candidates = get_all_imports(
^^^^^^^^^^^^^^^^
File "D:\Code\Python\flask-api\.venv\Lib\site-packages\pipreqs\pipreqs.py", line 153, in get_all_imports
raise exc
File "D:\Code\Python\flask-api\.venv\Lib\site-packages\pipreqs\pipreqs.py", line 139, in get_all_imports
tree = ast.parse(contents)
^^^^^^^^^^^^^^^^^^^
File "D:\SoftSetupLoaction\Python\Python312\Lib\ast.py", line 52, in parse
return compile(source, filename, mode, flags,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<unknown>", line 277
æ¼¢å = Kanji
^
SyntaxError: invalid character '¼' (U+00BC)
5.解决方法:
虚拟环境依赖问题忽略.venv:执行成功
pipreqs --ignore .venv --force
INFO: Not scanning for jupyter notebooks.
WARNING: Import named "Flask" not found locally. Trying to resolve it at the PyPI server.
WARNING: Import named "Flask" was resolved to "Flask:3.0.3" package (https://pypi.org/project/Flask/).
Please, verify manually the final list of requirements.txt to avoid possible dependency confusions.
WARNING: Import named "selenium" not found locally. Trying to resolve it at the PyPI server.
WARNING: Import named "selenium" was resolved to "selenium:4.21.0" package (https://pypi.org/project/selenium/).
Please, verify manually the final list of requirements.txt to avoid possible dependency confusions.
INFO: Successfully saved requirements file in D:\Code\Python\flask-api\requirements.txt