'фантомная" ошибки при загрузке на Ubuntu сервере

Рейтинг: 0Ответов: 1Опубликовано: 17.02.2023

у меня есть код для API который на windows 10 запускается без проблем, но когда переношу на сервер с Ubuntu 20.04 выдаёт ошибку в 28 строке( invalid syntax )

  File "API2.0.py", line 28
    async def main(text):
            ^
SyntaxError: invalid syntax

вот этот код

import stt
import tts
import json
import websockets
import asyncio
from flask import Flask, request, Response
from replika import Api
from translate import Translator

text = ""
translatorRU = Translator(from_lang="autodetect", to_lang="ru")
translatorEN = Translator(from_lang="autodetect", to_lang="en")

login = '1234569872461@gmail.com'
password = '52485248'

app = Flask(__name__)

@app.route('/process_wav', methods=['POST'])
def process_wav():
    wav_data1 = request.data
    text = stt.va_listen(wav_data1)
    wav_data2 = asyncio.run(main(text=text))
    resp = Response(wav_data2, status=200, mimetype='audio/wav')
    resp.headers['Content-Disposition'] = 'attachment; filename=output.wav'
    return resp

async def main(text):  #вот тут ошибка, указывает на def
    uri = 'wss://ws.replika.com/v17'
    async with websockets.connect(uri=uri) as ws:
        a = Api(ws=ws, login=login, password=password, id_type='email')
        a.auth()
        await a.initiate_conversation()
        print('      ')
        print(text)
        if text != "":
            messageEN = translatorEN.translate(text)
            await a.send_message(messageEN)
            data = await a.receive_message()
            text = translatorRU.translate(data['payload']['content']['text'])
            print(text)
            text = '...' + text
            return tts.va_speak(text)

if __name__ == '__main__':
    app.run()

пожалуйста объясните что не так

Ответы

▲ 0Принят

как оказалось всё прекрасно рабоает на python3.10.10 а на сервере стоял 2.7.18