mirror of
https://github.com/TeamPGM/PagerMaid_Plugins_Pyro.git
synced 2024-11-25 13:44:07 +00:00
sticker_transfer 修复错误
This commit is contained in:
parent
f2829ec91f
commit
0638720b1d
@ -262,10 +262,10 @@
|
||||
},
|
||||
{
|
||||
"name": "sticker_transfer",
|
||||
"version": "1.0",
|
||||
"version": "1.01",
|
||||
"section": "chat",
|
||||
"maintainer": "xtaodada",
|
||||
"size": "3.24 kb",
|
||||
"size": "3.5 kb",
|
||||
"supported": true,
|
||||
"des-short": "贴纸迁移",
|
||||
"des": "贴纸迁移。\n指令:,sticker_transfer"
|
||||
|
@ -3,6 +3,7 @@
|
||||
import csv
|
||||
|
||||
from asyncio import sleep
|
||||
from os import sep
|
||||
|
||||
from pyrogram.errors import StickersetInvalid, FloodWait
|
||||
from pyrogram.raw.functions.messages import GetAllStickers
|
||||
@ -27,7 +28,7 @@ async def export_sticker_to_csv():
|
||||
sticker_set.archived if hasattr(sticker_set, "archived") else False,
|
||||
sticker_set.animated if hasattr(sticker_set, "animated") else False,
|
||||
sticker_set.videos if hasattr(sticker_set, "videos") else False, ])
|
||||
return True
|
||||
return len(stickers.sets)
|
||||
|
||||
|
||||
async def import_sticker(short_name):
|
||||
@ -60,25 +61,31 @@ async def import_sticker_from_csv(file_name):
|
||||
@listener(command="sticker_transfer",
|
||||
need_admin=True,
|
||||
parameters="导出/导入",
|
||||
description="导出、导入已安装的贴纸")
|
||||
description="导出、导入已安装的贴纸包")
|
||||
async def sticker_transfer(message: Message):
|
||||
if message.arguments == "导出":
|
||||
await export_sticker_to_csv()
|
||||
await bot.send_document(message.chat.id, "stickers.csv", caption="贴纸导出文件")
|
||||
num = await export_sticker_to_csv()
|
||||
if num:
|
||||
await bot.send_document(message.chat.id,
|
||||
"stickers.csv",
|
||||
caption=f"贴纸包导出文件,成功导出了 {num} 个贴纸包",
|
||||
thumb=f"pagermaid{sep}assets{sep}logo.jpg",)
|
||||
safe_remove("stickers.csv")
|
||||
await message.safe_delete()
|
||||
else:
|
||||
await message.edit("没有贴纸包可以导出")
|
||||
elif message.arguments == "导入":
|
||||
reply = message.reply_to_message
|
||||
if not reply:
|
||||
return await message.edit("❌ 请回复贴纸导出文件")
|
||||
return await message.edit("❌ 请回复贴纸包导出文件")
|
||||
if not reply.document:
|
||||
return await message.edit("❌ 请回复贴纸导出文件")
|
||||
return await message.edit("❌ 请回复贴纸包导出文件")
|
||||
if not reply.document.file_name.endswith(".csv"):
|
||||
return await message.edit("❌ 请回复贴纸导出文件")
|
||||
return await message.edit("❌ 请回复贴纸包导出文件")
|
||||
message = await message.edit("导入中")
|
||||
file_name = await reply.download()
|
||||
success, failed = await import_sticker_from_csv(file_name)
|
||||
safe_remove(file_name)
|
||||
await message.edit(f"导入成功 {success} 个贴纸,失败 {failed} 个贴纸")
|
||||
await message.edit(f"导入成功 {success} 个贴纸包,失败 {failed} 个贴纸包")
|
||||
else:
|
||||
await message.edit("❌ 参数错误,请选择 `导出` 或 `导入` ")
|
||||
|
Loading…
Reference in New Issue
Block a user