windows下使用pip安裝模組發生“failed with error code 1”的解決方案

來源:互聯網
上載者:User

標籤:問題   這一   data   token   cmak   int   read   exe   原因   

win不愧是最爛的開發平台,在安裝第三方模組時經常出現些么蛾子。 
今天在window中使用python3內建的pip安裝scrapy時,出錯,錯誤碼如下:

Command "f:\python\python36\python.exe -u -c "import setuptools, tokenize;__file__=‘C:\\Users\\WONDER~1\\AppData\\Local\\Temp\\pip-build-90gvzc6m\\Twisted\\setup.py‘;f=getattr(tokenize, ‘open‘, open)(__file__);code=f.read().replace(‘\r\n‘, ‘\n‘);f.close();exec(compile(code, __file__, ‘exec‘))" install --record C:\Users\WONDER~1\AppData\Local\Temp\pip-2xl1_rnm-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\WONDER~1\AppData\Local\Temp\pip-build-90gvzc6m\Twisted\
  • 1

關鍵詞是:failed with error code 1 
事實上,這個錯誤碼之前在安裝pandas時也出現過,當時不了了之了。 
現今推測出現這個錯誤碼的原因有不少:

  1. pip版本過低
  2. 未安裝wheel模組。雖說wheel模組在安裝scrapy時應該會被自動安裝。
  3. 要安裝的模組不支援當前python版本。這個問題在python3上尤為明顯。(scrapy就是不能完美支援3)
  4. 電腦的名稱含有中文或其他稀奇古怪的非字母、數位字元。
  5. 電腦虛擬記憶體不足。這條有點扯,但是我百度的時候還有不少人提到這一點,也不知道是不是轉載的同一人的結論。
  6. 水逆。

(如今看來應該是要安裝的模組缺少依賴包,因為我在一台新的CentOS上配置環境時,也碰見過類似的代碼——於2017.09.22)

要解決它,最簡單的莫過於別用Windows了,用Linux去。當然,也Windows下的python3也不是不能用這些第三方模組,只不過需要自己手動安裝這些模組,而不要使用pip了。缺點是,很多情況下搞不清包與包之間的依賴,經常會漏包。

根據不同的模組,去查閱其各自的說明文檔,一般都會有安裝方式的說明。像scrapy的官方文檔就推薦了安裝方式:使用Mingwpy。

有或者,可以直接使用整合的第三方開發環境,比如在配置機器學習的環境時,直接使用了Anaconda。

對於winx下python3.6安裝scrapy,我又仔細看了看錯誤碼,確定是安裝twisted時出了問題。經過網上搜尋,找到了一個解決方案:

首先從http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted 下載twisted對應版本的whl檔案(如我的Twisted?17.5.0?cp36?cp36m?win_amd64.whl),cp後面是Python版本,amd64代表64位,運行命令:

pip install D:\TDownloads\Twisted-17.5.0-cp36-cp36m-win_amd64.whl
  • 1

其中install後面為完整路徑名

安裝完成後,再次運行:

pip install Scrapy
  • 1

即可成功。

windows下使用pip安裝模組發生“failed with error code 1”的解決方案

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.