mirror of
https://github.com/yasirarism/MissKatyPyro.git
synced 2026-01-08 04:44:51 +00:00
Some Minor Fix Because Upgrade to Python 3.11
This commit is contained in:
parent
d38712de06
commit
225005624e
7 changed files with 25 additions and 32 deletions
|
|
@ -28,6 +28,7 @@ MOD_NOLOAD = ["subscene_dl"]
|
||||||
HELPABLE = {}
|
HELPABLE = {}
|
||||||
cleanmode = {}
|
cleanmode = {}
|
||||||
botStartTime = time.time()
|
botStartTime = time.time()
|
||||||
|
misskaty_version = "v2.04.27 - Stable"
|
||||||
|
|
||||||
pymonclient = MongoClient(DATABASE_URI)
|
pymonclient = MongoClient(DATABASE_URI)
|
||||||
mongo = AsyncIOMotorClient(DATABASE_URI)
|
mongo = AsyncIOMotorClient(DATABASE_URI)
|
||||||
|
|
|
||||||
|
|
@ -169,7 +169,7 @@ async def edit_or_send_as_file(self, text: str, del_in: int = 0, as_raw: bool =
|
||||||
return await reply_as_file(self, text=text, *args, **kwargs)
|
return await reply_as_file(self, text=text, *args, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
async def reply_or_send_as_file(self, text: str, as_raw: bool = False, del_in: int = -1, *args, **kwargs) -> Union["Message", bool]:
|
async def reply_or_send_as_file(self, text: str, as_raw: bool = False, del_in: int = 0, *args, **kwargs) -> Union["Message", bool]:
|
||||||
"""\nThis will first try to message.reply.
|
"""\nThis will first try to message.reply.
|
||||||
If it raise MessageTooLong error,
|
If it raise MessageTooLong error,
|
||||||
run message.send_as_file.
|
run message.send_as_file.
|
||||||
|
|
|
||||||
|
|
@ -19,11 +19,11 @@ from psutil import cpu_percent
|
||||||
from psutil import disk_usage as disk_usage_percent
|
from psutil import disk_usage as disk_usage_percent
|
||||||
from psutil import virtual_memory
|
from psutil import virtual_memory
|
||||||
|
|
||||||
from pyrogram import enums, filters, Client
|
from pyrogram import enums, filters, Client, __version__ as pyrover
|
||||||
from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup, Message
|
from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup, Message
|
||||||
from pyrogram.raw.types import UpdateBotStopped
|
from pyrogram.raw.types import UpdateBotStopped
|
||||||
|
|
||||||
from misskaty import app, user, botStartTime, BOT_NAME
|
from misskaty import app, user, botStartTime, misskaty_version, BOT_NAME
|
||||||
from misskaty.helper.http import http
|
from misskaty.helper.http import http
|
||||||
from misskaty.helper.eval_helper import meval, format_exception
|
from misskaty.helper.eval_helper import meval, format_exception
|
||||||
from misskaty.helper.localization import use_chat_lang
|
from misskaty.helper.localization import use_chat_lang
|
||||||
|
|
@ -100,10 +100,6 @@ async def server_stats(self: Client, ctx: Message) -> "Message":
|
||||||
"""
|
"""
|
||||||
Give system stats of the server.
|
Give system stats of the server.
|
||||||
"""
|
"""
|
||||||
if os.path.exists(".git"):
|
|
||||||
botVersion = (await shell_exec("git log -1 --date=format:v%y.%m%d.%H%M --pretty=format:%cd"))[0]
|
|
||||||
else:
|
|
||||||
botVersion = "v2.49"
|
|
||||||
try:
|
try:
|
||||||
serverinfo = await http.get("https://ipinfo.io/json")
|
serverinfo = await http.get("https://ipinfo.io/json")
|
||||||
org = serverinfo.json()["org"]
|
org = serverinfo.json()["org"]
|
||||||
|
|
@ -116,16 +112,18 @@ async def server_stats(self: Client, ctx: Message) -> "Message":
|
||||||
free = get_readable_file_size(free)
|
free = get_readable_file_size(free)
|
||||||
neofetch = (await shell_exec("neofetch --stdout"))[0]
|
neofetch = (await shell_exec("neofetch --stdout"))[0]
|
||||||
caption = f"""
|
caption = f"""
|
||||||
**{BOT_NAME} {botVersion} is Up and Running successfully.**
|
<b>{BOT_NAME} {misskaty_version} is Up and Running successfully.</b>
|
||||||
<b>Bot Uptime:</b> `{currentTime}`
|
<b>Bot Uptime:</b> <code>{currentTime}</code>
|
||||||
|
<b>Pyrogram Version</b>: <code>{pyrover}</code>
|
||||||
|
<b>Python Version</b>: <code>{sys.version_info[0]}.{sys.version_info[1]}.{sys.version_info[2]} {sys.version_info[3].title()}</code>
|
||||||
<b>Server:</b> <code>{org}</code>
|
<b>Server:</b> <code>{org}</code>
|
||||||
<b>Total Disk Space:</b> `{total}`
|
<b>Total Disk Space:</b> <code>{total}</code>
|
||||||
<b>Used:</b> `{used}({disk_usage_percent("/").percent}%)`
|
<b>Used:</b> <code>{used}({disk_usage_percent("/").percent}%)</code>
|
||||||
<b>Free:</b> `{free}`
|
<b>Free:</b> <code>{free}</code>
|
||||||
<b>CPU Usage:</b> `{cpu_percent()}%`
|
<b>CPU Usage:</b> <code>{cpu_percent()}%</code>
|
||||||
<b>RAM Usage:</b> `{virtual_memory().percent}%`
|
<b>RAM Usage:</b> <code>{virtual_memory().percent}%</code>
|
||||||
|
|
||||||
`{neofetch}`
|
<code>{neofetch}</code>
|
||||||
"""
|
"""
|
||||||
await ctx.reply_msg(caption)
|
await ctx.reply_msg(caption)
|
||||||
|
|
||||||
|
|
@ -304,7 +302,7 @@ async def update_restart(self: Client, ctx: Message, strings) -> "Message":
|
||||||
async def updtebot(client, update, users, chats):
|
async def updtebot(client, update, users, chats):
|
||||||
if isinstance(update, UpdateBotStopped):
|
if isinstance(update, UpdateBotStopped):
|
||||||
user = users[update.user_id]
|
user = users[update.user_id]
|
||||||
await client.send_msg(LOG_CHANNEL, f"<a href='tg://user?id={user.id}'>{user.first_name}</a> ({user.id}) " f"{'BLOCKED' if update.stopped else 'UNBLOCKED'} the bot at " f"{datetime.fromtimestamp(update.date)}")
|
await client.send_msg(LOG_CHANNEL, f"<a href='tg://user?id={user.id}'>{user.first_name}</a> (<code>{user.id}</code>) " f"{'BLOCKED' if update.stopped else 'UNBLOCKED'} the bot at " f"{datetime.fromtimestamp(update.date)}")
|
||||||
|
|
||||||
async def aexec(code, c, m):
|
async def aexec(code, c, m):
|
||||||
exec("async def __aexec(c, m): " + "\n p = print" + "\n replied = m.reply_to_message" + "".join(f"\n {l_}" for l_ in code.split("\n")))
|
exec("async def __aexec(c, m): " + "\n p = print" + "\n replied = m.reply_to_message" + "".join(f"\n {l_}" for l_ in code.split("\n")))
|
||||||
|
|
|
||||||
|
|
@ -443,8 +443,8 @@ async def imdb_en_callback(self: Client, query: CallbackQuery):
|
||||||
i, userid, movie = query.data.split("#")
|
i, userid, movie = query.data.split("#")
|
||||||
if query.from_user.id != int(userid):
|
if query.from_user.id != int(userid):
|
||||||
return await query.answer("⚠️ Access Denied!", True)
|
return await query.answer("⚠️ Access Denied!", True)
|
||||||
await query.message.edit_caption("<i>⏳ Getting IMDb source..</i>")
|
|
||||||
try:
|
try:
|
||||||
|
await query.message.edit_caption("<i>⏳ Getting IMDb source..</i>")
|
||||||
url = f"https://www.imdb.com/title/tt{movie}/"
|
url = f"https://www.imdb.com/title/tt{movie}/"
|
||||||
resp = await http.get(url, headers=headers)
|
resp = await http.get(url, headers=headers)
|
||||||
sop = BeautifulSoup(resp, "lxml")
|
sop = BeautifulSoup(resp, "lxml")
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@ from motor import version as mongover
|
||||||
from pykeyboard import InlineKeyboard, InlineButton
|
from pykeyboard import InlineKeyboard, InlineButton
|
||||||
from pyrogram import __version__ as pyrover
|
from pyrogram import __version__ as pyrover
|
||||||
from pyrogram import enums, filters
|
from pyrogram import enums, filters
|
||||||
|
from pyrogram.errors import MessageIdInvalid, MessageNotModified
|
||||||
from pyrogram.types import (
|
from pyrogram.types import (
|
||||||
InlineKeyboardButton,
|
InlineKeyboardButton,
|
||||||
InlineKeyboardMarkup,
|
InlineKeyboardMarkup,
|
||||||
|
|
@ -541,8 +542,8 @@ async def destroy_msg(_, c_q):
|
||||||
async def imdb_inl(_, query):
|
async def imdb_inl(_, query):
|
||||||
i, user, movie = query.data.split("#")
|
i, user, movie = query.data.split("#")
|
||||||
if user == f"{query.from_user.id}":
|
if user == f"{query.from_user.id}":
|
||||||
await query.edit_message_caption("⏳ <i>Permintaan kamu sedang diproses.. </i>")
|
|
||||||
try:
|
try:
|
||||||
|
await query.edit_message_caption("⏳ <i>Permintaan kamu sedang diproses.. </i>")
|
||||||
url = f"https://www.imdb.com/title/{movie}/"
|
url = f"https://www.imdb.com/title/{movie}/"
|
||||||
resp = await get_content(url)
|
resp = await get_content(url)
|
||||||
sop = BeautifulSoup(resp, "lxml")
|
sop = BeautifulSoup(resp, "lxml")
|
||||||
|
|
@ -649,6 +650,8 @@ async def imdb_inl(_, query):
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
await query.edit_message_caption(res_str, parse_mode=enums.ParseMode.HTML, reply_markup=markup)
|
await query.edit_message_caption(res_str, parse_mode=enums.ParseMode.HTML, reply_markup=markup)
|
||||||
|
except (MessageNotModified, MessageIdInvalid):
|
||||||
|
pass
|
||||||
except Exception:
|
except Exception:
|
||||||
exc = traceback.format_exc()
|
exc = traceback.format_exc()
|
||||||
await query.edit_message_caption(f"<b>ERROR:</b>\n<code>{exc}</code>")
|
await query.edit_message_caption(f"<b>ERROR:</b>\n<code>{exc}</code>")
|
||||||
|
|
|
||||||
|
|
@ -7,39 +7,30 @@
|
||||||
"""
|
"""
|
||||||
import time
|
import time
|
||||||
import os
|
import os
|
||||||
|
import platform
|
||||||
from asyncio import Lock
|
from asyncio import Lock
|
||||||
from re import MULTILINE, findall
|
from re import MULTILINE, findall
|
||||||
from subprocess import run as srun
|
from subprocess import run as srun
|
||||||
|
|
||||||
from pyrogram import filters, Client
|
from pyrogram import filters, Client, __version__ as pyrover
|
||||||
from pyrogram.types import Message
|
from pyrogram.types import Message
|
||||||
|
|
||||||
from misskaty import app, botStartTime
|
from misskaty import app, botStartTime, misskaty_version
|
||||||
from misskaty.core.decorator.ratelimiter import ratelimiter
|
from misskaty.core.decorator.ratelimiter import ratelimiter
|
||||||
from misskaty.helper.human_read import get_readable_time
|
from misskaty.helper.human_read import get_readable_time
|
||||||
from misskaty.helper.http import http
|
from misskaty.helper.http import http
|
||||||
from .dev import shell_exec
|
|
||||||
from misskaty.vars import COMMAND_HANDLER
|
from misskaty.vars import COMMAND_HANDLER
|
||||||
|
|
||||||
|
|
||||||
@app.on_message(filters.command(["ping"], COMMAND_HANDLER))
|
@app.on_message(filters.command(["ping"], COMMAND_HANDLER))
|
||||||
@ratelimiter
|
@ratelimiter
|
||||||
async def ping(self: Client, ctx: Message):
|
async def ping(self: Client, ctx: Message):
|
||||||
if os.path.exists(".git"):
|
|
||||||
botVersion = (await shell_exec("git log -1 --date=format:v%y.%m%d.%H%M --pretty=format:%cd"))[0]
|
|
||||||
else:
|
|
||||||
botVersion = "v2.49"
|
|
||||||
try:
|
|
||||||
serverinfo = await http.get("https://ipinfo.io/json")
|
|
||||||
org = serverinfo.json()["org"]
|
|
||||||
except:
|
|
||||||
org = "N/A"
|
|
||||||
currentTime = get_readable_time(time.time() - botStartTime)
|
currentTime = get_readable_time(time.time() - botStartTime)
|
||||||
start_t = time.time()
|
start_t = time.time()
|
||||||
rm = await ctx.reply_msg("🐱 Pong!!...")
|
rm = await ctx.reply_msg("🐱 Pong!!...")
|
||||||
end_t = time.time()
|
end_t = time.time()
|
||||||
time_taken_s = round(end_t - start_t, 3)
|
time_taken_s = round(end_t - start_t, 3)
|
||||||
await rm.edit_msg(f"<b>🐈 MissKatyBot {botVersion} online.</b>\n\n<b>Ping:</b> <code>{time_taken_s} detik</code>\n<b>Uptime:</b> <code>{currentTime}</code>\nHosted by <code>{org}</code>")
|
await rm.edit_msg(f"<b>🐈 MissKatyBot {botVersion} based Pyrogram {pyrover} Online.</b>\n\n<b>Ping:</b> <code>{time_taken_s} detik</code>\n<b>Uptime:</b> <code>{currentTime}</code>\n<b>Python Version:</b> <code>{platform.python_version()}</code>")
|
||||||
|
|
||||||
|
|
||||||
@app.on_message(filters.command(["ping_dc"], COMMAND_HANDLER))
|
@app.on_message(filters.command(["ping_dc"], COMMAND_HANDLER))
|
||||||
|
|
|
||||||
|
|
@ -481,7 +481,7 @@ async def lendrive_s(self: Client, ctx: Message, strings):
|
||||||
kueri = ctx.input
|
kueri = ctx.input
|
||||||
if not kueri:
|
if not kueri:
|
||||||
kueri = ""
|
kueri = ""
|
||||||
pesan = await ctx.edit_msg(strings("get_data"), quote=True)
|
pesan = await ctx.reply_msg(strings("get_data"), quote=True)
|
||||||
CurrentPage = 1
|
CurrentPage = 1
|
||||||
lendres, PageLen, btn = await getDataLendrive(pesan, kueri, CurrentPage, ctx.from_user.id, strings)
|
lendres, PageLen, btn = await getDataLendrive(pesan, kueri, CurrentPage, ctx.from_user.id, strings)
|
||||||
if not lendres:
|
if not lendres:
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue