Spaces:
Runtime error
Runtime error
"""Failed attempt to fix "This event loop is already running" in Widows: | |
from platform import platform | |
if platform().lower().startswith("windows"): | |
from install import install | |
try: | |
import nest_asyncio | |
except ModuleNotFoundError: | |
try: | |
install("nest-asyncio") | |
import nest_asyncio | |
except Exception as exc: | |
print(exc) | |
raise SystemExit(1) | |
nest_asyncio.apply() | |
# """ | |
from multiprocessing import Process, freeze_support | |
import gradio as gr | |
import httpx | |
from logzero import logger | |
from deepl_fastapi.run_uvicorn import main | |
def deepl(text, from_lang, to_lang): | |
try: | |
text = str(text).strip() | |
except Exception: | |
text = "" | |
if not text: | |
return "Put something there, man." | |
# "http://127.0.0.1:8000/text/?q=test%20me&to_lang=zh" | |
url = "http://127.0.0.1:8000/text/" # ?q=test%20me&to_lang=zh" | |
try: | |
resp = httpx.get(f"{url}?q={text}&from_lang={from_lang}&to_lang={to_lang}") | |
resp.raise_for_status() | |
except Exception as exc: | |
logger.error(exc) | |
return str(exc) | |
try: | |
jdata = resp.json() | |
except Exception as exc: | |
logger.error(exc) | |
return str(exc) | |
try: | |
_ = jdata.get("trtext") | |
except Exception as exc: | |
logger.error(exc) | |
_ = str(exc) | |
return _ | |
if __name__ == "__main__": | |
freeze_support() | |
Process(target=main).start() | |
iface = gr.Interface( | |
fn=deepl, | |
inputs=[ | |
gr.Textbox(placeholder="Paste text here (max. 5000 chars)", lines=7,), | |
gr.Textbox(label="from_lang", value="en", lines=1), | |
gr.Textbox(label="to_lang", value="zh", lines=1), | |
], | |
outputs="textarea" | |
) | |
iface.launch() | |