以清华源为示例
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 要用小写的。
不同的系统环境安装方式不同,具体可以网上查找即可。
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
修改/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 参照这个修改即可。
完成之后可以把刚才下载的包直接删除,但是simple文件夹内的不能删。就是说simple文件夹的上一层内的可以删除。红框内可删。
如果需要临时加一些包的话。
按如下操作:
现在需要在whl 中增加whl2中的包
把whl2 中的问价夹放到whl中
如图
然后修改whl中的index.html
把whl2中的index.html内添加到whl中的index.html。
如图
图1
图2
最好按字母顺序排序一下。
另外我写了批量下载清华源等源到本地的代码。这里就不上传了。有问题的话可以邮箱 grantwtt@163.com