使用 PYTHON 为 PIP 搭建 HTTP 代理
在一台没有 Root 权限的机器上,部署使用 Python 编写的服务,似乎只有 virtualenv 一条路可以选了。 当然我见过一些同事会在自己的家目录编译一个,然后设置一下 $PATH ,但是从通用性和部署的便利性上考虑,还是使用 virtualenv 更划算一些。 使用 virtualenv 创建完环境之后,下一步就是要安装各种软件包了。 pip 可以很方便地(也不是全都很方便,比如MySQL-python)安装各种包,唯一的缺点就是
太
慢
了
!
经过搜索,发现 豆瓣 提供了 pip 的源, 可以让安装过程既酸爽,又过瘾:
pip install -i http://pypi.douban.com/simple eventlet
有了豆瓣提供的源,软件下载的速度快到让你不好意思,从此再也不用担心OP执行你的上线单失败了。
原本以为,搭建环境的事情到此为止了,没想到我毕竟还是 too young,上线单又出现了问题。
这次压根不是慢不慢的问题了,变成了有没有外网权限的问题了。公司机房的机器,有着严(che)格(dan)的权限管理,被管理的权限中,自然也包括了访问外网的权限。而为没一台机器都开通外网权限,显然是不可能的:一来 OP 所在的部门不答应;二来申请权限后就用一次,也会浪费了申请所花费的时间。
还好,pip 还支持代理,我只需要找一台有外网权限的开发机,然后搭建一个代理服务器,然后在pip中使用这个代理就可以了。造轮子是不(zao)划(bu)算(chu)的(lai),所以我找到了twisted提供的例子,分分钟搭建起一个代理服务。
最后一步,为pip使用代理:
pip install -i http://pypi.douban.com/simple --proxy http://10.11.12.13:8008 eventlet
使用 PYTHON 为 PIP 搭建 HTTP 代理的更多相关文章
- Python----Anaconda + PyCharm + Python 开发环境搭建(使用pip,安装selenium,使用IDLE)
1.Python开发中会用到的工具下载地址 FireBug插件安装地址:https://addons.mozilla.org/en-US/firefox/addon/firebug/ FirePath ...
- python开发环境搭建
虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...
- selenium + python自动化测试环境搭建
selenium的在python平台的搭建: 搭建平台windows 准备工具如下: --------------------------------------------------------- ...
- Python - 利用pip管理包
下载与安装setuptools和pip https://pypi.python.org/packages/source/s/setuptoolshttps://pypi.python.org/pypi ...
- selenium + python 自动化测试环境搭建
selenium + python 自动化测试 —— 环境搭建 关于 selenium Selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操 ...
- python编写的自动获取代理IP列表的爬虫-chinaboywg-ChinaUnix博客
python编写的自动获取代理IP列表的爬虫-chinaboywg-ChinaUnix博客 undefined Python多线程抓取代理服务器 | Linux运维笔记 undefined java如 ...
- ubuntu下python flask环境搭建
ubuntu下python flask环境搭建 1. 安装pip sudo apt-get install python-dev pyhton-pip 2. 安装virtualenv sudo apt ...
- python服务器环境搭建(2)——安装相关软件
在上一篇我们在本地的虚拟服务器上安装好CentOS7后,我们的python web服务.自定义的python service或python脚本需要在服务器上运行,还需要在服务器安装各种相关的软件才行, ...
- [笔记]我的Linux入门之路 - 05.Eclipse的Python开发环境搭建与Numpy、Scipy库安装
一.Python环境 直接终端查询下python安装没:python --version Python 2.7.12 Ubuntu竟然已经装了Python2.7,那就好说了.不然自己装和装jdk差不多 ...
随机推荐
- python platform模块
该模块用来访问平台相关属性. 常见属性和方法 系统名称 platform.system() 返回系统/操作系统名称,例如“Linux”,“Windows” >>> platform. ...
- ABAP抓取异常的方法:try,endtry
部分转自:http://www.cnblogs.com/jiangzhengjun/p/4292428.html +4.Funcion函数异常处理 说明: 异常处理机制可以有效避免 dump发生, : ...
- Oracle业务用户密码过期问题的解决
实验环境:Oracle 11.2.0.4 如果DBA不知道业务用户密码,当业务密码过期,应用要求DBA帮忙重设为原来的密码. 1.查询业务用户密码 从user$查到hash加密过的值: select ...
- 怎么在jquery里清空文本框的内容
$("input[name='test']").val("").focus(); // 将name=test的文本框清空并获得焦点,以便重新输入
- unp第七章补充之socket tcp 产生 rst响应的情况
socket tcp 产生 rst响应的情况(属于硬错误) 1. syn发送到服务器主机,但是目的端口并未运行.则产生一个ECONRFUSED错误.客户端立即返回.比如telnet 192.1 ...
- echarts2简单笔记
1.代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...
- swoole线程和进程
pstree -a | grep php | | `-php server.php 主进程 | | |-php server.php 管理线程 ...
- vs计算代码行数
1.用vs打开程序 2.编辑——查找——在文件中查找 3.查找内容^b*[^:b#/]+.*$ 应用正则表达式,在整个解决方案中,文件类型空 4.查找全部,仔细盯着右下角数字,查找完毕后会自动消失 ...
- Atcoder Tenka1 Programmer Contest 2019 D Three Colors
题意: 有\(n\)个石头,每个石头有权值,可以给它们染'R', 'G', 'B'三种颜色,如下定义一种染色方案为合法方案: 所有石头都染上了一种颜色 令\(R, G, B\)为染了'R', 染了'G ...
- 去除input的默认样式
input, button, select, textarea { outline: none; -webkit-appearance: none; border-radius: 0; } outli ...