解決pip install 卡住不動(dòng)的問(wèn)題
啥也不說(shuō)了,眼淚嘩嘩的 –來(lái)自怨念深重的不靈狗。
【運(yùn)行環(huán)境】
1、在ubuntu下使用pip安裝flask-mongoengine;
2、pip已經(jīng)升到最高版本,舊版本ctrl + c后還能知道斷在哪,新的就直接連個(gè)p都沒(méi)有;
3、使用了豆瓣的源做了加速,但是沒(méi)有用;
4、卡住了,怎么描述錯(cuò)誤提示?國(guó)內(nèi)和國(guó)外google了下都沒(méi)有啥相關(guān)問(wèn)題。
5、Extremely slow pypi package retrieval with i.e. pip可以這樣描述嗎?
6、Python 2.7.10
【錯(cuò)誤提示】
還想要錯(cuò)誤提示?卡住之后根本沒(méi)有錯(cuò)誤提示。
(venv)? flask-mongoengine-0.7.5 pip install flask-mongoengine --proxy=http://proxy.xxx.com:80 -v
Collecting flask-mongoengine
1 location(s) to search for versions of flask-mongoengine:
* http://pypi.douban.com/simple/flask-mongoengine/
Getting page http://pypi.douban.com/simple/flask-mongoengine/
Starting new HTTP connection (1): proxy.corp.qihoo.net
"GET http://pypi.douban.com/simple/flask-mongoengine/ HTTP/1.1" 301 178
"GET http://pypi.doubanio.com/simple/flask-mongoengine/ HTTP/1.1" 200 1068
Analyzing links from page http://pypi.doubanio.com/simple/flask-mongoengine/
Found link http://pypi.doubanio.com/packages/f3/46/e527ea37dd53e5addae8167c2e5850029c7be98add465928cac7d1d10d0e/flask-mongoengine-0.7.5.tar.gz#md5=e207998d4ab5237582c4983cd18ab484 (from http://pypi.doubanio.com/simple/flask-mongoengine/), version: 0.7.5
Using version 0.7.5 (newest of versions: 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7.0, 0.7.1, 0.7.3, 0.7.4, 0.7.5)
"GET http://pypi.doubanio.com/packages/f3/46/e527ea37dd53e5addae8167c2e5850029c7be98add465928cac7d1d10d0e/flask-mongoengine-0.7.5.tar.gz HTTP/1.1" 200 110621
Downloading http://pypi.doubanio.com/packages/f3/46/e527ea37dd53e5addae8167c2e5850029c7be98add465928cac7d1d10d0e/flask-mongoengine-0.7.5.tar.gz (110kB)
Downloading from URL http://pypi.doubanio.com/packages/f3/46/e527ea37dd53e5addae8167c2e5850029c7be98add465928cac7d1d10d0e/flask-mongoengine-0.7.5.tar.gz#md5=e207998d4ab5237582c4983cd18ab484 (from http://pypi.doubanio.com/simple/flask-mongoengine/)
100% |████████████████████████████████| 112kB 44.5MB/s
Running setup.py (path:/tmp/pip-build-5h86uM/flask-mongoengine/setup.py) egg_info for package flask-mongoengine
Running command python setup.py egg_info
#卡在這里不動(dòng)了
^CCleaning up...
Operation cancelled by user
【問(wèn)題原因】
手動(dòng)執(zhí)行,發(fā)現(xiàn)斷在了sock,ssl建立那塊的代碼,說(shuō)明在下載東西;
明明指定了douban的源, 卻下的依然很慢;
真相只有一個(gè),flask-mongoengine這個(gè)庫(kù)安裝時(shí)又自己安裝了其他庫(kù)(這里筆者稱為二次安裝),二次安裝時(shí)走的源是python自帶的[https://pypi.python.org],這樣就卡住了。
【解決方案】
筆者沒(méi)有找到比較優(yōu)美的方式解決問(wèn)題,在pip.conf中沒(méi)有設(shè)置二次安裝時(shí)指定源的方法,英文好的可以再研究下pip使用的官方文檔.
1. root用戶下編輯文件/usr/lib/python2.7/dist-packages/setuptools/package_index.py;
2. 插下廣告:用virtualenv的同學(xué)要修改venv目錄下的./lib/python2.7/site-packages/setuptools/package_index.py。
3. 跳到第261行,硬編碼index_url的值,改完后如下:
class PackageIndex(Environment):
"""A distribution index that scans web pages for download URLs"""
def __init__(
self, index_url="http://pypi.douban.com/simple", hosts=('*',),
ca_bundle=None, verify_ssl=True, *args, **kw
):
Environment.__init__(self,*args,**kw)
index_url = "http://pypi.douban.com/simple"
self.index_url = index_url + "/"[:not index_url.endswith('/')]
【執(zhí)行結(jié)果】
執(zhí)行命令 pip install flask-mongoengine ,貼一下成功后的提示(holy shit!)
... done Removing source in /tmp/pip-build-ZSaB9M/flask-mongoengine Successfully installed WTForms-2.1 flask-mongoengine-0.7.5 flask-wtf-0.12 Cleaning up...
【fck】
csdn做的markdown這SX玩應(yīng)兒,在numbered list 中間插個(gè)code block,代碼塊后的序號(hào)就對(duì)不上了,用官方的解決方案完全沒(méi)用,只能給最后一條分出個(gè)標(biāo)題了,可憐處女座了。
補(bǔ)充:Python 安裝模塊時(shí),使用pip install xxx安裝時(shí),很慢的解決方法
最近在使用Python的時(shí)候需要安裝各種模塊,而pip是很強(qiáng)大的模塊安裝工具,但是由于國(guó)外官方pypi經(jīng)常被墻,導(dǎo)致不可用,所以我們最好是將自己使用的pip源更換一下,這樣就能解決被墻導(dǎo)致的裝不上庫(kù)的煩惱。
最近使用得比較多并且比較順手的是清華大學(xué)的pip源,它是官網(wǎng)pypi的鏡像,每隔5分鐘同步一次,地址為 https://pypi.tuna.tsinghua.edu.cn/simple
臨時(shí)使用方法
比如我們需要安裝 selenium 庫(kù),那么可以使用這樣的安裝命令
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple selenium
這樣就可以從清華大學(xué)的鏡像很快去安裝selenium庫(kù)了。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
關(guān)于Python中*args和**kwargs的深入理解
這篇文章主要給大家介紹了關(guān)于Python中*args和**kwargs的相關(guān)資料,*args和**kwargs代表的是變量, 變量前面的 *(星號(hào))才是必須的,也可以寫成*v和**vs;寫成*args和**kwargs只是一個(gè)常用的書(shū)寫方式,需要的朋友可以參考下2021-08-08
Python中輕量級(jí)定時(shí)任務(wù)調(diào)度庫(kù)schedule使用指南
schedule是一款專為簡(jiǎn)化定時(shí)任務(wù)調(diào)度而設(shè)計(jì)的Python庫(kù),它通過(guò)直觀的語(yǔ)法降低了周期性任務(wù)的實(shí)現(xiàn)門檻,下面小編來(lái)和大家詳細(xì)講講它的具體使用吧2025-05-05
scrapy處理python爬蟲(chóng)調(diào)度詳解
在本篇文章里小編給大家整理的是一篇關(guān)于scrapy處理python爬蟲(chóng)調(diào)度的相關(guān)內(nèi)容,有興趣的朋友們學(xué)習(xí)下。2020-11-11
Django之第三方平臺(tái)QQ授權(quán)登錄的實(shí)現(xiàn)
本文主要介紹了Django之第三方平臺(tái)QQ授權(quán)登錄的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05
Python 爬蟲(chóng)實(shí)現(xiàn)增加播客訪問(wèn)量的方法實(shí)現(xiàn)
這篇文章主要介紹了Python 爬蟲(chóng)實(shí)現(xiàn)增加播客訪問(wèn)量的方法實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
python 文件常用操作demo(讀寫 打開(kāi)方式)
這篇文章主要為大家介紹了python 文件常用操作demo(讀寫 打開(kāi)方式)及使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03

