下载.whl包的简单脚本www.lfd.uci.edu/~gohlke/pythonlibs。
gohlkegrabber的Python项目详细描述
戈尔克·格拉伯
从位于https://www.lfd.uci.edu/~gohlke/pythonlibs的预构建Python包中下载.whl包的简单脚本。在
christophgohlke为许多流行的科学Python包维护32位和64位二进制文件。在从PyPI获取包(使用{{CD1}})时,这会为您带来一些麻烦,从而导致PIP尝试并生成基础C或C++代码。当然,这可以在Windows上运行,但是需要安装和配置C/++编译器和库,这两个库都是Linux安装的标准配置,但不是Windows。在
因此,如果您在安装一个包时遇到问题,那么您信任Gohlke的构建,并且您想要一些有助于自动下载的简单方法,请获取gohlkegrabber.py的副本,并像下面或download.py中所示那样调用它。在
当然,一旦有了控制盘(扩展名为.whl
的文件),就可以使用以下方法进行安装:
pip install path\to\saved\location\name.whl
安装
^{pr2}$依赖关系
将要安装的依赖项:
lxml>=4.4.2
入门
快速
安装后,要获取gdal
的最新副本:
fromgohlkegrabberimportGohlkeGrabbergg=GohlkeGrabber()gg.retrieve('c:/temp','gdal')
更详细
当您创建一个GohlkeGrabber
,它会自动从网站下载索引(或读取缓存副本),并计算出所提供的所有包。当然,这需要一个活跃的网络连接。在
您可以列出可用的软件包:
print(list(gg.packages))
注意,.packages
是dict
-当然,您可以直接使用字典,也可以自己使用其中的数据。例如,numpy
项的开头如下所示:
{'numpy-1.16.5+mkl-cp27-cp27m-win32.whl':{'link':'https://download.lfd.uci.edu/pythonlibs/t7epjj8p/numpy-1.16.5+mkl-cp27-cp27m-win32.whl','version':'1.16.5+mkl','build':None,'python':'2.7','abi':'cp27m','platform':'win32'},'numpy-1.16.5+mkl-cp27-cp27m-win_amd64.whl':...}
要下载numpy
的最新版本(默认),适用于Windows 64位(默认)和最新版本的Python(默认),您可以调用:
fn,metadata=gg.retrieve(output_folder,'numpy')
fn
将是下载的控制盘的文件名。metadata
将是一个字典,其中包含下载的轮子的元数据。如果无法下载与请求匹配的包,则两者都将None
。在
元数据的外观示例:
{'link':'https://download.lfd.uci.edu/pythonlibs/t7epjj8p/numpy-1.17.4+mkl-cp38-cp38-win_amd64.whl','version':'1.17.4+mkl','build':None,'python':'3.8','abi':'cp38','platform':'win_amd64'}
请注意,这只是.packages
dict
中的适当条目。在
要获取特定Python版本(例如2.7)、Windows版本(例如32位)和软件包版本(例如“<;1.17”)的副本,可以不按特定顺序为调用提供额外参数:
fn,metadata=gg.retrieve(output_folder,'numpy',python='2.7',platform='win32',version='<1.17')
下载的任何文件都将存储在output_folder
中。在
如果文件已经存在,则不会再次下载,除非您将overwrite=True
传递给.retrieve()
调用。在
如果使用cached
参数创建GohlkeGrabber,它会将下载的网页保存到该位置,或者加载该文件而不是再次下载(如果它已经存在)。在
gg=GohlkeGrabber(cached='work/cache.html')
许可证
这个项目是由麻省理工学院授权的。见LICENSE.txt。在
更改日志
0.3.0款
- 翻转了
python
参数的默认值,支持当前Python而不是最新的Python
0.2.9款
- 添加了一个用户代理头字段,因为该站点不再为基本的Python客户机提供服务
0.2.8款
- 开放发布,版本冲突
- 项目
标签: