PamGram/modules/error/pb.py

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

30 lines
948 B
Python
Raw Normal View History

import httpx
from core.config import config
2022-10-20 14:21:26 +00:00
from utils.log import logger
class PbClient:
def __init__(self):
self.client = httpx.AsyncClient()
self.PB_API = config.error_pb_url
2022-10-20 14:21:26 +00:00
self.sunset: int = config.error_pb_sunset # 自动销毁时间 单位为秒
self.private: bool = True
self.max_lines: int = config.error_pb_max_lines
async def create_pb(self, content: str) -> str:
if not self.PB_API:
return ""
2022-10-20 14:21:26 +00:00
logger.info("正在上传日记到 pb")
content = "\n".join(content.splitlines()[-self.max_lines:]) + "\n"
data = {
"c": content,
}
if self.private:
data["p"] = "1"
if self.sunset:
data["sunset"] = self.sunset
data = await self.client.post(self.PB_API, data=data) # 需要错误处理
2022-10-20 14:21:26 +00:00
logger.success("上传日记到 pb 成功")
return data.headers["location"]