2015-08-31 225 views
6

我已經使用Scrapy網站提供的Ubuntu軟件包安裝了Scrapy。 但在啓動一個Scrapy項目時開始新的scrapy項目時出錯

scrapy startproject test 

我得到的錯誤信息爲。

Traceback (most recent call last): File "/usr/bin/scrapy", line 5, 
in <module> 
    from pkg_resources import load_entry_point File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 3084, 
in <module> 
     File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 3070, in _call_aside 
     File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 3097, in _initialize_master_working_set 
     File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 653, in _build_master 
     File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 666, in _build_from_requirements 
     File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 844, in resolve 
     pkg_resources.ContextualVersionConflict: (pyasn1 0.1.7 (/usr/lib/python2.7/dist-packages), 
Requirement.parse('pyasn1>=0.1.8'), set(['pyasn1-modules'])) 

請幫我解決這個錯誤。我正在運行Python 2.7.6

+2

看起來你缺少一個依賴關係。嘗試安裝pyasn1 –

+0

只需在終端中鍵入scrapy並讓我知道結果 –

+0

'pip install pyasn1' - 如果您收到錯誤消息,可能帶有'sudo'。 –

回答

-3

我剛剛有完全相同的問題。 這是沒有更新的依賴關係的東西。 嘗試這樣的:

sudo易於得到的autoremove蟒蛇

則:

apt-get的安裝python

apt-get的安裝python-scrapy

+2

在這裏不必要的刪除python。 – coderatchet

24

根據錯誤:

pkg_resources.ContextualVersionConflict: (pyasn1 0.1.7 (/usr/lib/python2.7/dist-packages), 
Requirement.parse('pyasn1>=0.1.8'), set(['pyasn1-modules'])) 

需要pyasn1版本應爲大於或等於0.1.8和當前已安裝在全球py2.7的dist-包v0.1.7

sudo pip install pyasn1 --upgrade將更新您當前的pyasn1包到最新版本並應該解決問題。

注意:您可能希望檢查依賴於此庫的其他項目或應用程序是否仍然正常工作。

作爲上述通知的解決方案,請查看爲您的python項目創建virtualenv的問題,因爲這會將依賴包封裝到項目中(全局項目不受影響)。上的virtualenv瞭解更多信息,可以發現HERE

+0

歡迎來到Stack Overflow!請考慮編輯您的帖子,以添加更多關於您的代碼的解釋以及爲什麼它可以解決問題。一個主要包含代碼的答案(即使它正在工作)通常不會幫助OP瞭解他們的問題。 – SuperBiasedMan

+0

這適用於我! –

+0

在Ubuntu上沒有點子,請參閱下面的z.neal的答案,它的工作原理! –

0

首先你應該訪問https://pypi.python.org/pypi/pyasn1/ 然後下載pyasn1-0.1.9-py2.7.egg(MD5) 然後執行easy_install的pyasn1-0.1.9,py2.7.egg 它可以在我的電腦上運行(CentOS 7)

+1

請發佈這將如何解決問題。然後referecens – Sachith

+0

這是正確的答案!它解決了我的Ubuntu機器上超級簡單的問題!謝謝! –