feat: 配置项目的热修改

This commit is contained in:
2024-03-30 19:24:09 +08:00
parent c15c604752
commit 9b2b0a7c7d
15 changed files with 11526 additions and 47 deletions

View File

@ -1,6 +1,7 @@
import nonebot
from nonebot.log import logger
from nonebot.plugin import PluginMetadata
from playwright.async_api import Browser
from .browser import (
get_browser as get_browser,
@ -25,36 +26,4 @@ __plugin_meta__ = PluginMetadata(
extra={},
)
driver = nonebot.get_driver()
@driver.on_startup
async def init(**kwargs):
"""Start Browser
Returns:
Browser: Browser
"""
browser = await get_browser(**kwargs)
logger.info("Browser Started.")
return browser
@driver.on_shutdown
async def shutdown():
await shutdown_browser()
logger.info("Browser Stopped.")
browser_init = init
__all__ = [
"browser_init",
"capture_element",
"get_new_page",
"html_to_pic",
"md_to_pic",
"template_to_html",
"template_to_pic",
"text_to_pic",
]
browser: Browser

View File

@ -1,3 +1,4 @@
import os.path
from os import getcwd
from pathlib import Path
from typing import Literal, Optional, Union
@ -204,7 +205,6 @@ async def html_to_pic(
async def template_to_pic(
template_path: str,
template_name: str,
templates: dict,
pages: Optional[dict] = None,
wait: int = 0,
@ -216,7 +216,6 @@ async def template_to_pic(
Args:
template_path (str): 模板路径
template_name (str): 模板名
templates (dict): 模板内参数 : {"name": "abc"}
pages (dict): 网页参数 Defaults to
{"base_url": f"file://{getcwd()}", "viewport": {"width": 500, "height": 10}}
@ -234,10 +233,10 @@ async def template_to_pic(
}
template_env = jinja2.Environment( # noqa: S701
loader=jinja2.FileSystemLoader(template_path),
loader=jinja2.FileSystemLoader(os.path.dirname(template_path)),
enable_async=True,
)
template = template_env.get_template(template_name)
template = template_env.get_template(os.path.basename(template_path))
return await html_to_pic(
template_path=f"file://{template_path}",

View File

@ -43,12 +43,13 @@ def load_resource_from_dir(path: str):
_loaded_resource_packs.append(ResourceMetadata(**metadata))
def get(path: str, default: Any = None) -> str | Any:
def get_path(path: str, abs_path: bool = False, default: Any = None) -> str | Any:
"""
获取资源包中的文件
Args:
abs_path:
default: 默认
path: 文件相对路径
Returns: 文件绝对路径
"""
return _resource_data.get(path, default)
return _resource_data.get(path, default) if not abs_path else os.path.abspath(_resource_data.get(path, default))