2017-05-27 103 views
0

我最近切換的筆記本電腦從微軟到蘋果公司(2015年的MacBook Pro)和我已經沒有任何問題成功地安裝Python庫,如Nlkt。使用PIP在Mac上安裝tweepy - 錯誤信息

現在,我一直在試圖安裝tweepy並似乎得到不同的錯誤消息的負載。

想我pip install tweepy [錯誤消息說「無效語法」在我的終端]後,我做了這裏的一些研究和嘗試以下解決方案:

import pip 
>>> package_name='tweepy' 
>>> pip.main(['install',package_name]) 

OSError: [Errno 1] Operation not permitted: '/var/folders/t1/4g62trws5812jb97vvw5kp900000gn/T/pip-yabtGc-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info' 
2 
>>> 

正如你可以看到它仍然沒有工作...

我也曾嘗試sudo pip install tweepy,它想出了這個消息:

目錄「/用途rs/MYNAME/Library/Caches/pip'或其父目錄不屬於當前用戶,並且緩存輪已被禁用。檢查該目錄的權限和所有者。如果用sudo執行pip,你可能需要sudo的-H標誌。

要求已經滿足:tweepy在./Library/Python/2.7/lib/python/site-packages
要求已經滿足:六> =在./Library/Python/2.7/lib/python/ 1.7.3站點包(來自tweepy)
需求已滿足:請求-oauthlib> = 0.4.1 in ./Library/Python/2.7/lib/python/site-packages(來自tweepy)
需求已滿足:請求> = 2.4.3在./Library/Python/2.7/lib/python/site-packages(從tweepy)
要求已經滿足:oauthlib> =在./Library/Python/2.7/lib/python/site- 0.6.2包(從請求 - oauthlib> = 0.4.1-> tweepy)
要求alre ady滿意:urllib3 < 1.22,> = 1.21.1 in ./Library/Python/2.7/lib/python/site-packages(from requests> = 2.4.3-> tweepy)
要求已經滿足:idna < 2.6, > =在./Library/Python/2.7/lib/python/site-packages 2.5(從請求> = 2.4.3-> tweepy)
要求已經滿足:CERTIFI> = 2017年4月17日在./Library/Python/ 2.7/lib目錄/蟒蛇/站點包(從請求> = 2.4.3-> tweepy)
要求已經滿足:chardet的< 3.1.0,> = 3.0.2在./Library/Python/2.7/lib/python/site-packages(從請求> = 2.4.3-> tweepy)

當我試圖導入tweepy進入閒置它說「無模塊命名tweepy」

對不起,我冗長的解釋,但我越來越絕望......

非常感謝你的幫助已經!

回答

0

從看你的錯誤信息,看來你已經擁有它。

要求已經滿足:tweepy在./Library/Python/2.7/lib/python/site-packages

我試圖複製(在Python的2.7/3.5),您的問題並沒有遇到任何問題並能夠將其導入到IDLE中。

潛在的解決方案可能會將您的PATH目錄更改爲您的錯誤消息中列出的目錄。

export PYTHONPATH=$PYTHONPATH:./Library/Python/2.7/lib/python/site-packages

另一件事是考慮在未來使用virtual environment,以確保有一個在您安裝包沒有衝突。

0

一種解決方案是使用virtualenv

簡而言之,virtualenv在與計算機的python安裝不同的文件夾中創建一個單獨的python實例。這允許輕鬆安裝軟件包,並幫助您更好地管理依賴項,而不是使用pip全局安裝所有軟件。

我該怎麼做?

首先,install virtualenv

$ pip install virtualenv 

接下來,創建一個虛擬的環境。以下命令將在您執行此目錄的目錄中名爲「foo」的文件夾中創建一個python實例。

$ virtualenv foo 

現在,每當你需要安裝的東西,使用位於foo/bin/pip畫中畫和位於foo/bin/python蟒蛇。

$ foo/bin/pip install tweepy 

您可以通過Python解釋器測試:

$ foo/bin/python 
Python 2.7.10 (default, Feb 6 2017, 23:53:20) 
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import tweepy 

你爲什麼要這麼做?

如果使用virtualenv,則不太可能遇到依賴性問題。

例如,假設您製作了一些名爲ProjectAAA的Python程序,它使用了LibraryXYZ的1.1版本。幾個月後,你想編寫一個新的,完全不相關的Python程序ProjectZZZ,它使用同一個庫的版本2.2.5。當LibraryXYZ從1.1升級到2.2.5時,他們刪除並重命名了您在ProjectAAA中使用的幾個類和函數。因此,如果您使用pip並將其安裝到Mac上的主python實例中,您將無法再運行ProjectAAA,因爲它取決於版本1.1,但計算機的版本是2.2.5。

如果你使用virtualenv,你可以有兩個獨立的python實例,每個實例都有自己的pip和他們自己的軟件包安裝。因此,ProjectAAA的環境具有1.1版本,ProjectZZZ的環境具有2.2.5版本,並且兩者都可以在您的計算機上和平生活。

0

我使用OS X,我只是成功安裝tweepy Python的IDLE使用:

import pip 
package_name='tweepy' 
pip.main(['install',package_name]) 

這是很容易。

感謝您的提供;現在我可以繼續我的第一次提取。