Erro ao instalar pôster (módulo Python)
-
21-09-2019 - |
Pergunta
Estou tentando instalar Biblioteca de pôsteres de Chris Atlee's Python Para que eu possa fazer upload de um arquivo usando uma consulta HTTP Post a partir do meu script.
No Python 2.3, quando eu digito # python setup.py install
, Estou tendo o erro a seguir. A instalação continua, mas eu não posso >>> import poster
mais tarde.
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
Algum indicador?
Solução
O Python 2.3 não teve suporte para decoradores (é isso que @classmethod é) ou listar compreensões (que é o segundo erro), então você terá que encontrar uma versão mais antiga do pôster ou ficar com urllib/urllib2 para fazendo seu trabalho http.
Na verdade, parece que o pôster foi criado por volta de julho de 2008, então é improvável que haja uma versão que suporta o Python 2.3, mesmo que você possa encontrar a fonte original. Qualquer motivo específico que você não pode atualizar para o mais recente Python 2.x, pelo menos?