如何确定未安装的python包的大小?
我没有多少空间了,我很想安装python库 我想在安装is之前知道python库有多大(只是想知道如果我没有足够的空间,可以请求多大的额外空间)如何确定未安装的python包的大小?,python,pip,Python,Pip,我没有多少空间了,我很想安装python库 我想在安装is之前知道python库有多大(只是想知道如果我没有足够的空间,可以请求多大的额外空间) 是否有办法做到这一点,例如使用pip?据我所知,使用pip是不可能的。但是,如果包托管在PyPI上,您可以将/json附加到URL以查看更多详细信息,包括文件大小 例如,访问并查看releases键中的条目。每个版本的大小告诉您下载量有多大 请注意,这会告诉您下载的大小,而不是安装后的大小(因为在解压缩归档文件等之后,软件包可能会请求额外的安装依赖项)
是否有办法做到这一点,例如使用
pip
?据我所知,使用pip
是不可能的。但是,如果包托管在PyPI上,您可以将/json
附加到URL以查看更多详细信息,包括文件大小
例如,访问并查看releases
键中的条目。每个版本的大小告诉您下载量有多大
请注意,这会告诉您下载的大小,而不是安装后的大小(因为在解压缩归档文件等之后,软件包可能会请求额外的安装依赖项)。因此,在安装之前,您的问题可能很难回答。据我所知,使用pip
是不可能的。但是,如果包托管在PyPI上,您可以将/json
附加到URL以查看更多详细信息,包括文件大小
例如,访问并查看releases
键中的条目。每个版本的大小告诉您下载量有多大
请注意,这会告诉您下载的大小,而不是安装后的大小(因为在解压缩归档文件等之后,软件包可能会请求额外的安装依赖项)。因此,在安装之前,您的问题可能很难回答。这是我目前使用的脚本
(基于来自的优秀包遍历代码)
步骤:
创建python脚本以检查当前安装的所有pip包
创建一个shell脚本来创建一个全新的python环境,并安装要测试的包
运行shell脚本
利润:)
第一步
创建一个名为tool size.py的python脚本
#/usr/bin/env python
导入操作系统
导入pkg_资源
def calc_容器(路径):
总尺寸=0
对于os.walk(路径)中的dirpath、dirname和文件名:
对于文件名中的f:
fp=os.path.join(dirpath,f)
总大小+=os.path.getsize(fp)
返回总大小
def calc_安装尺寸():
dists=[pkg_resources.working_set中的d代表d]
总尺寸=0
打印(f“依赖项的大小”)
打印(“-”*40)
对于dist in dist:
#忽略预先安装的pip和设置工具
如果dist.project_名称位于[“pip”,“setuptools”]:
持续
尝试:
path=os.path.join(dist.location,dist.project\u name)
大小=计算容器(路径)
总尺寸+=尺寸
如果尺寸/1000>1.0:
打印(f“{dist}:{size/1000}KB”)
打印(“-”*40)
除操作错误外:
“{}不再存在。格式(dist.project_name)
打印(f“总大小(包括依赖项):{Total_Size/1000}KB”)
如果名称=“\uuuuu main\uuuuuuuu”:
计算安装尺寸()
步骤2
创建名为tool size.sh的bash脚本
#/usr/bin/env bash
#取消注释以进行调试
#集合x
rm-rf~/.virtualenvs/刀具尺寸测试仪
python-m venv~/.virtualenvs/工具大小测试仪
source~/.virtualenvs/tool size tester/Scripts/activate
pip安装-q$1
python工具-size.py
使停止工作
步骤3
使用要获取其大小的包运行脚本
tool-size.sh xxx
比如说块菌糖
$ ./tool-size.sh truffleHog3
Size of Dependencies
----------------------------------------
truffleHog3 2.0.6: 56.46 KB
----------------------------------------
smmap 4.0.0: 108.808 KB
----------------------------------------
MarkupSafe 2.0.1: 40.911 KB
----------------------------------------
Jinja2 3.0.1: 917.551 KB
----------------------------------------
gitdb 4.0.7: 320.08 KB
----------------------------------------
Total Size (including dependencies): 1443.81 KB
这是我目前正在使用的脚本
(基于来自的优秀包遍历代码)
步骤:
创建python脚本以检查当前安装的所有pip包
创建一个shell脚本来创建一个全新的python环境,并安装要测试的包
运行shell脚本
利润:)
第一步
创建一个名为tool size.py的python脚本
#/usr/bin/env python
导入操作系统
导入pkg_资源
def calc_容器(路径):
总尺寸=0
对于os.walk(路径)中的dirpath、dirname和文件名:
对于文件名中的f:
fp=os.path.join(dirpath,f)
总大小+=os.path.getsize(fp)
返回总大小
def calc_安装尺寸():
dists=[pkg_resources.working_set中的d代表d]
总尺寸=0
打印(f“依赖项的大小”)
打印(“-”*40)
对于dist in dist:
#忽略预先安装的pip和设置工具
如果dist.project_名称位于[“pip”,“setuptools”]:
持续
尝试:
path=os.path.join(dist.location,dist.project\u name)
大小=计算容器(路径)
总尺寸+=尺寸
如果尺寸/1000>1.0:
打印(f“{dist}:{size/1000}KB”)
打印(“-”*40)
除操作错误外:
“{}不再存在。格式(dist.project_name)
打印(f“总大小(包括依赖项):{Total_Size/1000}KB”)
如果名称=“\uuuuu main\uuuuuuuu”:
计算安装尺寸()
步骤2
创建名为tool size.sh的bash脚本
#/usr/bin/env bash
#取消注释以进行调试
#集合x
rm-rf~/.virtualenvs/刀具尺寸测试仪
python-m venv~/.virtualenvs/工具大小测试仪
source~/.virtualenvs/tool size tester/Scripts/activate
pip安装-q$1
python工具-size.py
使停止工作
步骤3
使用要获取其大小的包运行脚本
tool-size.sh xxx
比如说块菌糖
$ ./tool-size.sh truffleHog3
Size of Dependencies
----------------------------------------
truffleHog3 2.0.6: 56.46 KB
----------------------------------------
smmap 4.0.0: 108.808 KB
----------------------------------------
MarkupSafe 2.0.1: 40.911 KB
----------------------------------------
Jinja2 3.0.1: 917.551 KB
----------------------------------------
gitdb 4.0.7: 320.08 KB
----------------------------------------
Total Size (including dependencies): 1443.81 KB