summaryrefslogtreecommitdiff
path: root/ATRI/plugins/tex.py
diff options
context:
space:
mode:
Diffstat (limited to 'ATRI/plugins/tex.py')
-rw-r--r--ATRI/plugins/tex.py52
1 files changed, 0 insertions, 52 deletions
diff --git a/ATRI/plugins/tex.py b/ATRI/plugins/tex.py
deleted file mode 100644
index 01eabf7..0000000
--- a/ATRI/plugins/tex.py
+++ /dev/null
@@ -1,52 +0,0 @@
-import re
-from urllib.parse import quote_plus
-from nonebot.adapters.cqhttp.message import Message, MessageSegment
-
-from nonebot.plugin import on_command
-from nonebot.adapters.cqhttp import Bot, MessageEvent
-from nonebot.typing import T_State
-
-from ATRI.exceptions import RequestTimeOut
-from ATRI.rule import is_in_banlist, is_in_dormant
-from ATRI.utils.request import post_bytes
-
-
-ZHIHU_TEX_SVG_URL_FORMAT = 'https://www.zhihu.com/equation?tex='
-LATEX2PNG_API_URL = 'http://latex2png.com/'
-LATEX2PNG_IMAGE_URL_FORMAT = 'http://latex2png.com/output//'
-
-
-tex = on_command("/tex", rule=is_in_banlist() & is_in_dormant())
-
-async def _tex(bot: Bot, event: MessageEvent, state: T_State) -> None:
- tex_code = str(event.message).strip()
- if tex_code:
- state["tex_code"] = tex_code
-
[email protected]("tex_code", prompt="请告诉咱需要生成图片的的Tex公式")
-async def __tex(bot: Bot, event: MessageEvent, state: T_State) -> None:
- tex_code = state["tex_code"]
- try:
- req = await post_bytes(
- LATEX2PNG_API_URL,
- params={
- "latex": tex_code,
- "res": "600",
- "color": "000000"
- }
- )
- except RequestTimeOut:
- raise RequestTimeOut("Failed to request!")
-
- html = str(req)
- m = re.search(r"latex_[0-9a-z]+\.png", html)
- if not m:
- await tex.finish("生成失败,等会再试试吧...")
-
- await tex.finish(
- Message(
- MessageSegment.image(LATEX2PNG_IMAGE_URL_FORMAT + m.group(0)) +
- "\n" + ZHIHU_TEX_SVG_URL_FORMAT + quote_plus(tex_code)
- )
- )