nonebot-plugin-rollpig 0.2.4__tar.gz → 0.2.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/PKG-INFO +1 -1
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/__init__.py +7 -25
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/pyproject.toml +1 -1
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/LICENSE +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/README.md +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/android-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/apple-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/bacon.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/big-lazy-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/black-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/black-white-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/chained_crown_pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/crystal-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/demon-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/doll-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/explosive-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/goblin-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/heaven-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/human.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/invisible_pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/landmine-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/lao_zhu_li.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/magic-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/mc_porkchop.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/mechanical-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig-ball.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig-bun.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig-cat.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig-die.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig-human.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig-souffle.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig-stamp.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig-turtle.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pig_god.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/pork-skewer.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/rainbow-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/roasted-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/skeleton-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/snow-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/soul-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/tangyuan_pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/tank_pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/taxi-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/vangogh_pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/watermelon-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/wild-boar.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/zhuge-liang.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/image/zombie-pig.png +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/pig.json +0 -0
- {nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/resource/template.html +0 -0
{nonebot_plugin_rollpig-0.2.4 → nonebot_plugin_rollpig-0.2.5}/nonebot_plugin_rollpig/__init__.py
RENAMED
|
@@ -1,33 +1,13 @@
|
|
|
1
1
|
import json, random, datetime, asyncio, requests
|
|
2
2
|
from pathlib import Path
|
|
3
3
|
|
|
4
|
-
from nonebot import on_command, require
|
|
4
|
+
from nonebot import on_command, require
|
|
5
5
|
from nonebot.adapters.onebot.v11 import Event, MessageSegment
|
|
6
6
|
from nonebot.log import logger
|
|
7
7
|
from nonebot.plugin import PluginMetadata
|
|
8
8
|
|
|
9
9
|
pig_images = []
|
|
10
10
|
|
|
11
|
-
@on_startup
|
|
12
|
-
async def load_pig_images():
|
|
13
|
-
global pig_images
|
|
14
|
-
try:
|
|
15
|
-
data = await asyncio.to_thread(sync_fetch_pig_data, "https://pighub.top/api/all-images")
|
|
16
|
-
|
|
17
|
-
if data and data.get("images"):
|
|
18
|
-
pig_images = data["images"]
|
|
19
|
-
logger.success(f"成功从 PigHub 缓存 {len(pig_images)} 头猪猪")
|
|
20
|
-
else:
|
|
21
|
-
logger.warning("PigHub 中找不到猪猪")
|
|
22
|
-
except requests.exceptions.RequestException as e:
|
|
23
|
-
logger.error(f"从PigHub中获取猪猪失败: {e}")
|
|
24
|
-
|
|
25
|
-
def sync_fetch_pig_data(url: str):
|
|
26
|
-
response = requests.get(url, timeout=30)
|
|
27
|
-
response.raise_for_status()
|
|
28
|
-
|
|
29
|
-
return response.json()
|
|
30
|
-
|
|
31
11
|
# 确保依赖插件先被 NoneBot 注册
|
|
32
12
|
require("nonebot_plugin_htmlrender")
|
|
33
13
|
require("nonebot_plugin_localstore")
|
|
@@ -64,9 +44,6 @@ roll_pig = on_command("随机小猪", block=True)
|
|
|
64
44
|
async def _(event: Event):
|
|
65
45
|
global pig_images
|
|
66
46
|
if not pig_images:
|
|
67
|
-
await roll_pig.finish("猪圈空荡荡,猪猪还没加载出来或者加载失败了...")
|
|
68
|
-
|
|
69
|
-
# 再次尝试
|
|
70
47
|
try:
|
|
71
48
|
data = await asyncio.to_thread(sync_fetch_pig_data, "https://pighub.top/api/all-images")
|
|
72
49
|
if data and data.get("images"):
|
|
@@ -78,13 +55,18 @@ async def _(event: Event):
|
|
|
78
55
|
logger.error(f"从PigHub中获取猪猪失败: {e}")
|
|
79
56
|
|
|
80
57
|
if not pig_images:
|
|
81
|
-
await roll_pig.finish("
|
|
58
|
+
await roll_pig.finish("猪圈空荡荡...")
|
|
82
59
|
return
|
|
83
60
|
|
|
84
61
|
pig = random.choice(pig_images)
|
|
85
62
|
image_url = "https://pighub.top/data/" + pig["thumbnail"].split("/")[-1]
|
|
86
63
|
await roll_pig.finish(MessageSegment.image(image_url))
|
|
87
64
|
|
|
65
|
+
def sync_fetch_pig_data(url: str):
|
|
66
|
+
response = requests.get(url, timeout=30)
|
|
67
|
+
response.raise_for_status()
|
|
68
|
+
|
|
69
|
+
return response.json()
|
|
88
70
|
|
|
89
71
|
def load_json(path, default):
|
|
90
72
|
if not path.exists():
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|