pip自动更换国内最快源(一键傻瓜版)

使用场景:

  1. 提高下载速度:‌由于国内网络环境的复杂性,‌使用默认的pip源可能会导致下载速度慢的问题,‌尤其是在需要安装大型依赖项或更新众多包的情况下。‌更换为国内的源可以显著加速包的下载和安装过程,‌从而提高开发效率。‌

  2. 增加下载成功率:‌有时使用官方源可能会因为网络环境或其他原因导致下载失败。‌更换为其他可靠的源可以避免这种情况,‌提高下载成功率,‌避免反复尝试和浪费时间。‌

  3. 获取最新软件包:‌有些第三方库发布更新较快,‌而官方源更新较慢。‌通过更换源,‌可以更及时地获取到最新的软件包,‌保持开发环境的最新性。‌

  4. 解决网络问题:‌更换源还可以帮助避免由于网络问题导致的下载失败,‌尤其是在网络不稳定或存在访问限制的情况下,‌通过更换到其他可访问的源,‌可以解决下载包时可能遇到的困难。‌

使用方式:

python3 fastpip.py

具体代码:

import requests
import subprocess
import time

sources = [
    "https://mirrors.aliyun.com/pypi/simple/",
    "https://pypi.tuna.tsinghua.edu.cn/simple",
    "https://pypi.mirrors.ustc.edu.cn/simple/",
    "http://pypi.douban.com/simple/"
]

def test_source_response_time(sources):
    fastest_source = None
    min_time = float('inf')
    for source in sources:
        start_time = time.time()
        try:
            response = requests.get(source, timeout=10)
            response.raise_for_status()  # 确保请求成功
            elapsed_time = time.time() - start_time
            print(f"测试 {source}: {elapsed_time:.2f} 秒")
            if elapsed_time < min_time:
                fastest_source = source
                min_time = elapsed_time
        except requests.RequestException as e:
            print(f"测试 {source} 失败: {e}")

    return fastest_source

def set_pip_source(source):
    subprocess.run(['pip', 'config', 'set', 'global.index-url', source], check=True)
    print(f"pip 源已设置为: {source}")

def main():
    print("正在测试国内源的响应时间...")
    fastest_source = test_source_response_time(sources)
    if fastest_source:
        print(f"响应时间最短的源是: {fastest_source}")
        set_pip_source(fastest_source)
    else:
        print("所有源都无法访问,请检查网络连接或稍后再试。")

if __name__ == "__main__":
    main()

一个数据库行业摸索的7年小白,计划在今年通过自己的能力构建一套企业级数据库管理平台,欢迎各位大佬投稿提供建议意见!!!

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值