2009-11-23 157 views
0

我試圖安裝Chris Atlee's python Poster library,所以我可以在腳本中使用HTTP POST查詢上傳文件。安裝海報(Python模塊)時出錯

在python 2.3上,當我輸入# python setup.py install時,出現以下錯誤。安裝繼續,但我不能>>> import poster稍後。

byte-compiling build/bdist.linux-x86_64/egg/poster/encode.py to encode.pyc 
    File "build/bdist.linux-x86_64/egg/poster/encode.py", line 112 
    @classmethod 
    ^
SyntaxError: invalid syntax 
byte-compiling build/bdist.linux-x86_64/egg/poster/streaminghttp.py to streaminghttp.pyc 
    File "build/bdist.linux-x86_64/egg/poster/streaminghttp.py", line 114 
    newheaders = dict((k,v) for k,v in req.headers.items() 
          ^
SyntaxError: invalid syntax 
byte-compiling build/bdist.linux-x86_64/egg/poster/__init__.py to __init__.pyc 

任何指針?

回答

1

Python 2.3沒有支持裝飾器(這就是@classmethod是)或列表解析(這是第二個錯誤),所以你要麼必須找到舊版本的海報,要麼堅持urllib/urllib2用於執行HTTP工作。

實際上,它看起來像海報是在2008年7月左右創建的,因此即使您可以找到原始源代碼,也不太可能會有支持Python 2.3的版本。至少無法升級到最新的Python 2.x的任何特定原因?