2016-08-18 195 views
0

我已經試過 pip install radiopyPIP不能安裝radiopy

回溯:

C:\Users\олег\Downloads>pip install radiopy 
Collecting radiopy 
Using cached radio 

py-0.6.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\29F0~1\AppData\Local\Temp\pip-build-blxa2oob\radiopy\setup.py, line 23, in <module> 
version=get_version('radio.py'), 
File "C:\Users\29F0~1\AppData\Local\Temp\pip-build-blxa2oob\radiopy\setup.py 
return __version__ 
NameError: name '__version__' is not defined 
---------------------------------------- 
Command "python setup.py egg_info" failed with error code 1 in  
C:\Users\29F0~1\AppData\Local\Temp\pip-build-blxa2oob\radiopy\ 

我也試過:
easy_install radiopy

回溯:

File "c:\python34\lib\site-packages\setuptools\sandbox.py", line 168, in save_modules 
saved_exc.resume() 
File "c:\python34\lib\site-packages\setuptools\sandbox.py", line 143, in resume 
six.reraise(type, exc, self._tb) 
File "c:\python34\lib\site-packages\pkg_resources\_vendor\six.py", line 685, in reraise 
raise value.with_traceback(tb) 
File "c:\python34\lib\site-packages\setuptools\sandbox.py", line 156, in save_modules 
yield saved 
File "c:\python34\lib\site-packages\setuptools\sandbox.py", line 197, in setup_context yield 
File "c:\python34\lib\site-packages\setuptools\sandbox.py", line 246, in run_setup 
DirectorySandbox(setup_dir).run(runner) 
File "c:\python34\lib\site-packages\setuptools\sandbox.py", line 276, in run return func() 
File "c:\python34\lib\site-packages\setuptools\sandbox.py", line 245, in runner 
_execfile(setup_script, ns) 
File "c:\python34\lib\site-packages\setuptools\sandbox.py", line 47, in _execfile 

exec(code, globals, locals) 
File "C:\Users\29F0~1\AppData\Local\Temp\easy_install-laprrvio\radiopy-0.6\setup.py", line 23, in <module> 
File "C:\Users\29F0~1\AppData\Local\Temp\easy_install-laprrvio\radiopy-0.6\setup.py", line 19, in get_version 
NameError: name '__version__' is not defined 

最近,
C:\Users\олег>pip install C:\\Users\\олег\\Downloads\\radiopy-0.6.tar.gz

回溯:

C:\Users\олег>pip install C:\\Users\\олег\\Downloads\\radiopy-0.6.tar.gz 
Processing c:\users\олег\downloads\radiopy-0.6.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\29F0~1\AppData\Local\Temp\pip-8evw0uk0-build\setup.py", line 23, in <module> 
version=get_version('radio.py'), 
File "C:\Users\29F0~1\AppData\Local\Temp\pip-8evw0uk0-build\setup.py", line 19, in get_version 
return __version__ 
NameError: name '__version__' is not defined 
---------------------------------------- 
Command "python setup.py egg_info" failed with error code 1 in C:\Users\29F0~1\AppData\Local\Temp\pip-8evw0uk0-build\ 

我該如何解決這個問題?

回答

0

該模塊似乎只支持Python 2。該setup.py包含一個非常可疑的黑客評價__version__變量:

def get_version(filename): 
    """Extract __version__ from file by parsing it.""" 
    with open(filename) as fp: 
     for line in fp: 
      if line.startswith('__version__'): 
       exec(line) 
       return __version__ 

這裏做的事情是要找到與__version__,即__version__ = '0.6'開始的行,然後用exec,其工作執行它作爲動態代碼。但是在Python 3中,不會修改本地變量,因此__version__未在下一行中定義。

即使您修復了這個錯誤,您也遇到了無數其他人,因爲該軟件包根本就不是Python-3。最簡單的解決方案是使用Python 2.但即使如此,我也不太確定它是否適用於Windows,因爲它是爲mplayer/mencoder套件編寫的,而且它的代碼似乎非常注重Linux/POSIX。

+0

所以它不會與pyth3x和Windows工作? –

+0

它絕對不能在Python 3中工作,並且不會無負載修復。你甚至在你的Windows上有[這個mplayer](https://sourceforge.net/projects/mplayerwin/)?即使那樣,我個人也不會浪費時間安裝Python 2並嘗試這樣做,但我並不禁止你:D –

+0

好吧man t /////// –