詳細版本見個人博客:Python項目生成requirements
一起開發項目的時候總是要搭建環境和部署環境的,這個時候必須得有個Python第三方包的list,一般都叫做
requirements.txt
。本文介紹了兩種生成
requirements.txt
的方法。
一、使用pip freeze
pip freeze
>
requirements.txt
這種方式配合
virtualenv
才好使,否則把整個環境中的包都列出來了。
下面是在
虛擬環境
中生成的
requirements.txt
文件內容:
cat
requirements.txt
certifi==2019.3.9
chardet==3.0.4
fake-useragent==0.1.11
idna==2.7
lxml==4.2.5
numpy==1.16.3
pandas==0.22.0
python-dateutil==2.8.0
pytz==2019.1
requests==2.20.0
six==1.12.0
urllib3==1.24.3
二、使用 pipreqs
這個工具通過對項目目錄的掃描,自動發現使用了那些類庫,自動生成依賴清單。此工具是基于
imports
,即你的項目引入了哪個包,此工具才會把引入的包寫到
requirements.txt
中,要比
pip freeze
干凈。這個工具的缺點是可能會有些偏差,需要檢查并自己調整下。
pipreqs ./
有可能會報如下錯誤:
Traceback (most recent call last):
File "c:\program files\python36\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "c:\program files\python36\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Program Files\Python36\Scripts\pipreqs.exe\__main__.py", line 9, in
File "c:\program files\python36\lib\site-packages\pipreqs\pipreqs.py", line 396, in main
init(args)
File "c:\program files\python36\lib\site-packages\pipreqs\pipreqs.py", line 341, in init
extra_ignore_dirs=extra_ignore_dirs)
File "c:\program files\python36\lib\site-packages\pipreqs\pipreqs.py", line 75, in get_all_imports
contents = f.read()
UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 12: illegal multibyte sequence
這是由于編碼問題所導致的,加上
encoding
參數即可,如下:
pipreqs ./ --encoding
=
utf-8
下面我看下生成的
requirements.txt
文件內容:
cat
requirements.txt
requests==2.20.0
fake_useragent==0.1.11
lxml==4.2.5
pandas==0.22.0
詳細版本見個人博客:Python項目生成requirements
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
