str_splitter / app.py
admin
fix special marks
e0039f4
raw
history blame
1.53 kB
import os
import math
import gradio as gr
EN_US = os.getenv("LANG") != "zh_CN.UTF-8"
ZH2EN = {
"待分割字符串": "String to be split",
"分割步长": "Split step",
"状态栏": "Status",
"分割结果": "Split result",
"字符串分割": "String Splitter",
}
def _L(zh_txt: str):
return ZH2EN[zh_txt] if EN_US else zh_txt
def infer(cookie: str, step: int):
status = "Success"
output = ""
try:
cookie = cookie.strip()
if not cookie:
raise ValueError("请输入 cookie !")
md_lines = []
size = len(cookie)
count = math.ceil(size / step)
for i in range(count):
md_lines.append(
f"```txt\n{cookie[i * step: min((i + 1) * step, size)]}\n```")
output = "\n".join(md_lines)
except Exception as e:
status = f"{e}"
return status, output
if __name__ == "__main__":
gr.Interface(
fn=infer,
inputs=[
gr.TextArea(label=_L("待分割字符串")),
gr.Slider(
label=_L("分割步长"),
minimum=1,
maximum=255959,
step=1,
value=1024,
),
],
outputs=[
gr.Textbox(label=_L("状态栏"), show_copy_button=True),
gr.Markdown(label=_L("分割结果"), container=True,
show_copy_button=True),
],
flagging_mode="never",
title=_L("字符串分割")
).launch()