2017-06-30 150 views
1

編輯:是的,我知道this question已存在,除了我的問題有點不同,沒有解決方案修復它。Python pip安裝提供了「命令」python setup.py egg_info「失敗,錯誤代碼1」

我在工作時並不是在個人計算機上執行大部分Python工作,但我決定將其安裝在我的個人計算機上。我新裝了python 3.6.1,並創建了一個虛擬環境virtualenv。然後的virtualenv中我試圖點子安裝的urllib(或模塊)和我收到的錯誤:

(pdbot) C:\Users\user\Documents\pdbot>pip install urllib 
Collecting urllib 
    Using cached urllib-1.21.1.tar.gz 
    Complete output from command python setup.py egg_info: 
    Traceback (most recent call last): 
     File "<string>", line 1, in <module> 
     File "C:\Users\user\AppData\Local\Temp\pip-build-50tn0wlb\urllib\setup.py", line 191 
    s.connect((base64.b64decode(rip), 017620)) 
             ^
    SyntaxError: invalid token 

    ---------------------------------------- 
Command "python setup.py egg_info" failed with error code 1 in C:\Users\user\AppData\Local\Temp\pip-build-50tn0wlb\urllib\ 

我看別的地方,這個錯誤必須是與setuptools的沒有被正確安裝。所以,我跑這來嘗試解決問題:

easy_install -U setuptools

我結束了接收下一個甚至怪異的錯誤:

(pdbot) C:\Users\zeke\Documents\pdbot>easy_install -U setuptools 
Searching for setuptools 
Reading https://pypi.python.org/simple/setuptools/ 
Downloading https://pypi.python.org/packages/a9/23/720c7558ba6ad3e0f5ad01e0d6ea2288b486da32f053c73e259f7c392042/setuptools-36.0.1.zip#md5=430eb106788183eefe9f444a300007f0 
Best match: setuptools 36.0.1 
Processing setuptools-36.0.1.zip 
Writing C:\Users\zeke\AppData\Local\Temp\easy_install-jhg1val_\setuptools-36.0.1\setup.cfg 
Running setuptools-36.0.1\setup.py -q bdist_egg --dist-dir C:\Users\zeke\AppData\Local\Temp\easy_install-jhg1val_\setuptools-36.0.1\egg-dist-tmp-8apak7kn 
warning: no files found matching '*' under directory 'setuptools\_vendor' 
Copying setuptools-36.0.1-py3.6.egg to c:\users\zeke\documents\pdbot\lib\site-packages 
Adding setuptools 36.0.1 to easy-install.pth file 
Installing easy_install-script.py script to c:\users\zeke\documents\pdbot\Scripts 
Installing easy_install.exe script to c:\users\zeke\documents\pdbot\Scripts 
error: [WinError 5] Access is denied: 'c:\\users\\zeke\\documents\\pdbot\\Scripts\\easy_install.exe' 

這看起來像一個權限錯誤,但我跑這些都在管理員命令提示符(Windows 10)並得到相同的結果。我是這臺計算機上的唯一用戶,我擁有所有管理員權限。這個virtualenv是否會造成問題?我該如何補救?


編輯:我能夠通過利用Python的可執行文件,像這樣來解決權限問題:

python -m easy_install -U setuptools

但它並沒有解決python setup.py egg_info問題。試圖pip install什麼時候我仍然收到此錯誤信息:

Command "python setup.py egg_info" failed with error code 1 in C:\Users\user\AppData\Local\Temp\pip-build-50tn0wlb\urllib\ 

我曾經嘗試都python -m pip install urllibpip install urllib也不工作。

+0

檢查屬性:\\ \\用戶\\ ZEKE文件\\ \\ pdbot腳本\\',並確保當前用戶(您)可以寫,編輯文件 – Stack

+0

它被設置爲只讀,但改變後,問題仍然存在。 – Logicman

+0

在屬性中檢查'安全'選項卡並檢查您的用戶的權限 – Stack

回答

1

我在嘗試安裝urllib時遇到了同樣的問題,但在執行pip search urllib之後,我發現問題歸因於urllib的版本。從搜索:

$ pip search urllib 
... 
> urllib5 (5.0.0) - Just increment the number and create a new lib. Never fix the original one. 

最後,一個簡單的

pip install urllib5 
升高殼內

解決它。

0

有兩點才能回答你的問題,使:

1.你是幸運的,你沒有安裝該程序包!

您試圖安裝的軟件包是一個惡意創建的python軟件包,其設計看起來像一個真正的軟件包(在本例中爲urllib3)。如果您已經安裝了該軟件包,該軟件包將可以正常運行,除非它已經發送了有關您將該軟件包安裝到一個URL的系統的一些基本信息(您可以在此處看到更多詳細信息)here。您可以在以下任一鏈接瞭解更多關於這個假包:

發送有關的基本信息你的系統到一個未知的來源不是你可以做的最糟糕的事情,但是當然你可能想要儘量避免。

2.要正確安裝包...

  • 具體的urllib:

    要安裝的urllib,你需要指定你想安裝的軟件包的版本。例如,pip install urllib3pip install urllib5

  • 任何包一般:

    由於@Elisabete科埃略建議,您可以使用pip search <package-name>功能來查看可用的軟件包。然而,這並不完美,因爲它可能會列出惡意庫,例如您正在嘗試安裝的惡意庫。一個很好的指導方針是,您應該密切關注軟件包文檔中的安裝說明,以避免出現無法預料的問題。這是生活在人們假裝蟒蛇包裝的世界的不幸必需品。在`C的

相關問題