内网建自己的pip源

news2024/11/28 10:38:29

内网建自己的pip源

  • 一. 下载数据包
  • 二. 建立索引
  • 三. 安装nginx
  • 四. 配置nginx
  • 五.展示

一. 下载数据包

以清华源为示例

import requests
import bs4
import re
import wget
a = requests.get("https://pypi.tuna.tsinghua.edu.cn/simple").text
b = bs4.BeautifulSoup(a, "html.parser")
s = b.find_all("a")
count=0
with open("/Users/dongxiang/code/whl/pypi.txt", "w") as f:
   for i in range(len(s)):
      tree=requests.get("https://pypi.tuna.tsinghua.edu.cn/simple/"+s[i].text ).text
      tree_parser = bs4.BeautifulSoup(tree, "html.parser")
      real_name = tree_parser.find_all("a")
      for i in range(len(real_name)):
         ##print(str(real_name[i].text )+ "\n",str(count))
         count=count+1
         whlname=real_name[i].text
         ###此处只下载python3.10版本的whl
         if (re.findall(r'cp310', whlname) or re.findall(r'none-any', whlname) )and re.findall(r'.*\.whl', whlname) :
            #print(real_name[i].text+" URL:https://pypi.tuna.tsinghua.edu.cn/simple/"+real_name[i].attrs['href']+"\n")
            #f.write(real_name[i].text+" URL:https://pypi.tuna.tsinghua.edu.cn/simple/"+real_name[i].attrs['href']+"\n")
            wget.download("https://pypi.tuna.tsinghua.edu.cn/simple/s[i].text/"+real_name[i].attrs['href'],"/Users/dongxiang/code/whl"+real_name[i].text)
f.close()

二. 建立索引

需要先安装python,最好创建虚拟环境。参考我的另一个文章。

本地安装pip2pi

pip install pip2pi

命令行切换到下载的 .whl文件夹,建立索引(自动生成了index.html)

dir2pi -S 【某文件夹】此处为/Users/dongxiang/code/whl

然后文件夹内就出现了一个simple文件夹,这里的内容就和阿里、清华、豆瓣的源差别没那么大了。

注意如果是在Linux 环境下,这个S 要用小写的。

三. 安装nginx

不同的系统环境安装方式不同,具体可以网上查找即可。

  • Linux :
yum install nginx

第一步: yum install nginx

安装命令执行完等待安装完成即可
第二步: cd /etc/nginx

安装完成后nginx的目录
第三步: service nginx start

如果访问不了,可能是防火墙问题

添加 --permanent永久生效,没有此参数重启后失效 这里的6379为redis服务的端口,若为其他服务设置,需要对应端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent 
重新载入
firewall-cmd --reload
查看所有打开的端口: 
firewall-cmd --zone=public --list-ports
防火墙的关闭: 
systemctl stop firewalld	//一般不用
防火墙的启动: 
systemctl start firewalld

查看安装目录

rpm -ql nginx

4、运行起来,就可以直接输入 ip 地址查看了,端口默认是 80

sudo service nginx start

5、nginx 默认配置文件的路径

/usr/local/nginx/nginx-1.13.7/conf

或者

/etc/nginx/nginx.conf
停止 nginx:nginx.exe -s stop
重新加载:nginx.exe -s reload
退出:nginx.exe -s quit

  • Windows:
    直接解压压缩包到指定位置即可。

四. 配置nginx

修改/etc/nginx/nginx.conf配置文件
Windows版
在这里插入图片描述

修改nginx.conf

server { 
	listen 8888; 
	# server_name 10.10.2.33:8888; 
	server_name 127.0.0.1:8888; 
	charset utf-8; 
	location / { 
	root C:/develop/Projects/pypip/whl/simple;
	autoindex on; 
	autoindex_exact_size off; #显示文件的大小
	autoindex_localtime on; #显示文件时间 
	#limit_rate_after 5m; #5分钟后下载速度限制为200k 
	#limit_rate 200k;
	} 
	access_log logs/pip.log; 
	}

linux 参照这个修改即可。

五.展示

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/975955.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

冠达管理:券商8月调研热情高 工业机械行业受青睐

截至9月4日记者发稿,8月以来券商累计调研次数约1.44万次,环比增加超160%。其间,工业机械职业公司获券商调研最多。 调研逾900只个股 截至9月4日发稿,8月以来券商累计调研948只个股。从个股调研热度看,容百科技最受券…

配电房无人值守

配电房无人值守依托电易云-智慧电力物联网,实现对整个配用电过程的监管,在数据统计和处理的基础上,对配电房的电气成套设备及环境变化实现即时工作状态实时监控和计算机控制,实现区域环境、监控视频、消防安全、采暖通风系统、照明…

Python综合案例(折线统计图)

首先介绍一个很好的工具网站:懒人工具-手机APP工具下载-手机软件下载大全 - 173软件站 可以在网站对json数据进行格式化分析,效率很高! 安装pyecharts命令: pip install pyecharts 折线统计图实现代码实现 """ 演…

实体店商家为什么要做微信小程序开发

一、引言 在数字化时代,线上线下的融合已经成为零售业的发展趋势。微信小程序作为连接线上线下的重要桥梁,为实体店商家提供了新的商业机会。本文将探讨实体店商家为什么要做微信小程序开发,以及微信小程序能为实体店带来哪些益处。 二、微信…

新蛋跨境电商怎么快速提升Review

Review在新蛋平台的重要性不言而喻,好的评论可以给潜在的顾客以购买的信心,很多的卖家都会通过测评,来增加产品的评论来美化商品,进而带来更多的曝光量和流量,产生更多的订单,所以,对于任何一个…

ModuleNotFoundError: No module named ‘transformers.modeling_bart‘解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

SpringBoot+Vue体育场馆预约管理系统 附带详细运行指导视频

文章目录 一、项目演示二、项目介绍三、运行截图四、主要代码 一、项目演示 项目演示地址: 视频地址 二、项目介绍 项目描述:这是一个基于SpringBootVue框架开发的体育场馆预约管理系统。首先,这是一个前后端分离的项目,代码简…

浅谈Jmeter性能测试流程

不管是Loadrunner还是jmeter进行性能测试,测试流程基本上都是一样的,限制以Jmeter为例分析测试流程: 一、性能测试需求分析 一般而言,被测对象的性能需求,会在用户需求规格说明说中给出,比如单位时间内的…

MySQL主从复制和读写分离搭建

目录 一、主从复制原理 1、MySql支持从复制类型 2、主从复制的原理⭐⭐⭐ 4、mysql主从复制延迟 异步、同步、半同步复制: 二、主从复制实验 1、mysql 时间同步 1.1 主服务设置被同步的时间 1.2 两台从服务器设置时间同步(两台服务器一样配置&am…

MySQL基础1——DDL、DML、DQL及DCL的相关概念和操作

MySQL中DDL、DML、DQL及DCL的相关概念和操作 一. SQL通用语法二. SQL分类1. DDL(Data Definition Language)1.1 查询1.1.1 查询所有数据库1.1.2 查询当前数据库1.1.3 查询当前数据库所有表1.1.4 查询表结构1.1.5 查询指定表的建表语句 1.2 创建1.2.1 创建数据库1.2.2 …

【Web】vue开发环境搭建教程(详细)

系列文章 C#底层库–记录日志帮助类 本文链接:https://blog.csdn.net/youcheng_ge/article/details/124187709 文章目录 系列文章前言一、安装准备1.1 node.js1.2 国内镜像站1.3 Vue脚手架1.4 element ui1.5 Visual Studio Code 二、安装步骤2.1 下载msi安装包2.2 …

【考研数学】高等数学第五模块 —— 级数(1,常数项级数)

文章目录 引言一、常数项级数1.1 基本概念1.2 基本性质1.3 两个重要级数1.3.1 p 级数1.3.2 几何级数 1.4 正项级数及其敛散性判断1.5 交错级数及其审敛法1.6 级数的绝对收敛与条件收敛 写在最后 引言 来攻坚级数了,其实也不用这么畏难,几年前刚接触时没…

【力扣每日一题】2023.9.5 从两个数字数组里生成最小数字

目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目给我们两个数字数组,要我们用这两个数组里的元素组成一个数字,这个数字里需要同时拥有两个数组里的至少一个元…

10个最强大的基于生成式AI的3D建模工具

推荐:用 NSDT编辑器 快速搭建可编程3D场景 在快速发展的技术世界中,人工智能 (AI) 已经改变了游戏规则,尤其是在 3D 对象生成领域。 AI 驱动的 3D 对象生成器彻底改变了我们创建和可视化 3D 模型的方式,使该过程更加高效、准确且可…

Bigemap如何添加历史影像

工具 Bigemap gis office地图软件 BIGEMAP GIS Office-全能版 Bigemap APP_卫星地图APP_高清卫星地图APP 打开软件,然后点击选择地图这个按钮,列表中有个添加按钮点进去选择添加地图的方式。 ​ 第一种方式:通过地图配置文件批量解析添加地…

ipad触控笔是哪几款?开学季平价电容笔推荐

许多人已经开始用iPad写字和画画了。而且现在的iPad,偏重于实用性,他们认为,要让iPad更加的实用,必须要有一个好的电容笔才行。事实上,如果你仅仅是想要用它来做笔记的话,有许多的平替的电容笔,…

Shell常用的几个正则表达式:[:alnum:], [:alpha:], [:upper:], [:lower:], [:digit:] 认知

一:通配符命令简介: 匹配符合相关条件的符号,匹配文件名查找。 通配符类型: *:匹配任意长度的任意字符 ?:匹配任意单个字符 []:匹配指定范围内的任意单个字符 [^]:匹配指…

Odoo|5分钟创建自定义的业务系统唯一序列号

在业务操作中,经常会遇到需要生成全局唯一序列号数据的情况,比如订单号、报价单号等。为了确保数据的唯一性和准确性,通常我们会使用Redis或其他分布式锁机制来实现。然而,很多人可能不知道,odoo框架本身提供了一个原生…

各种工具集锦(持续更新ing...)

诸神缄默不语-个人CSDN博文目录 用LLM(大规模预训练语言模型)或者说AI的,特见我写的这篇博文:在线LLM应用集锦(持续更新ing…) 本篇博文不会重复该博文中写过的内容。 文章目录 1. 视频制作1. 视频剪辑软件…

CVE-2023-3450:锐捷 RG-BCR860 命令执行漏洞复现

锐捷 RG-BCR860 命令执行漏洞(CVE-2023-3450)复现 0x01 前言 本次测试仅供学习使用,如若非法他用,与本文作者无关,需自行负责!!! 0x02 漏洞描述 Ruijie Networks RG-BCR860是中国锐捷网络(R…