You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

自定义包setup.py依赖rarfile,Test PyPI安装失败但手动安装正常求助

解决Test PyPI安装依赖包找不到的问题

这问题我之前帮人排查过,核心原因其实很简单——Test PyPI和官方PyPI是完全独立的两个仓库:你依赖的rarfile只上传到了官方PyPI,并没有出现在Test PyPI里。当你用--index-url https://test.pypi.org/simple/安装自己的包时,pip只会在Test PyPI范围内搜索所有依赖,自然找不到rarfile==3.1;而你手动安装时没指定仓库,pip默认从官方PyPI拉取资源,所以能成功安装。

给你两个可行的解决方案:

方案1:安装时同时指定双仓库(推荐)

安装你的droidlysis包时,用--extra-index-url把官方PyPI作为额外仓库。这样pip会优先从Test PyPI拉取你的包,然后自动去官方PyPI找缺失的依赖:

pip3 install --no-cache-dir --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ droidlysis

这个方案最稳妥,不需要修改你的包配置,而且兼容所有主流pip版本。

方案2:在setup.py中配置依赖来源(可选)

如果你希望用户不用手动加参数,可以在setup.py里添加依赖的仓库链接(注意:这个特性在新版setuptools中已经被标记为弃用,仅作为备选方案):

setup(
    ...
    install_requires=[
        'rarfile'
    ],
    dependency_links=[
        'https://pypi.org/simple/rarfile/'
    ],
)

用这个方案的话,部分pip版本需要额外加--process-dependency-links参数才能生效,所以还是方案1更省心。

你也可以自己验证一下:去Test PyPI的搜索页面搜rarfile,会发现完全找不到匹配的包,这也能直接印证问题的根源。

内容的提问来源于stack exchange,提问作者user1381

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 18:47:30