mirror of
https://github.com/TeamPGM/PagerMaid_Plugins_Pyro.git
synced 2024-11-22 08:27:39 +00:00
xtaodada
fb5a3f5baf
All checks were successful
Github commit to telegram / build (push) Successful in 13s
69 lines
2.0 KiB
Python
69 lines
2.0 KiB
Python
import json
|
||
from json.decoder import JSONDecodeError
|
||
from pyrogram import Client
|
||
|
||
from pagermaid.enums import Message
|
||
from pagermaid.listener import listener
|
||
from pagermaid.utils import pip_install
|
||
|
||
pip_install("requests")
|
||
|
||
import requests
|
||
|
||
|
||
@listener(command="bin", description="查询信用卡信息", parameters="[bin(4到8位数字)]")
|
||
async def card(_: Client, message: Message):
|
||
await message.edit("正在查询中...")
|
||
try:
|
||
card_bin = message.arguments
|
||
except ValueError:
|
||
await message.edit("出错了呜呜呜 ~ 无效的参数。")
|
||
return
|
||
try:
|
||
r = requests.get(f"https://lookup.binlist.net/{card_bin}")
|
||
except:
|
||
await message.edit("出错了呜呜呜 ~ 无法访问到binlist。")
|
||
return
|
||
if r.status_code == 404:
|
||
await message.edit("出错了呜呜呜 ~ 目标卡头不存在")
|
||
return
|
||
if r.status_code == 429:
|
||
await message.edit("出错了呜呜呜 ~ 每分钟限额超过,请等待一分钟再试")
|
||
return
|
||
|
||
try:
|
||
bin_json = json.loads(r.content.decode("utf-8"))
|
||
except JSONDecodeError:
|
||
await message.edit("出错了呜呜呜 ~ 无效的参数。")
|
||
return
|
||
|
||
msg_out = [f"BIN:{card_bin}"]
|
||
try:
|
||
msg_out.extend(["卡品牌:" + bin_json["scheme"]])
|
||
except (KeyError, TypeError):
|
||
pass
|
||
try:
|
||
msg_out.extend(["卡类型:" + bin_json["type"]])
|
||
except (KeyError, TypeError):
|
||
pass
|
||
try:
|
||
msg_out.extend(["卡种类:" + bin_json["brand"]])
|
||
except (KeyError, TypeError):
|
||
pass
|
||
try:
|
||
msg_out.extend(["发卡行:" + bin_json["bank"]["name"]])
|
||
except (KeyError, TypeError):
|
||
pass
|
||
try:
|
||
if bin_json["prepaid"]:
|
||
msg_out.extend(["是否预付:是"])
|
||
else:
|
||
msg_out.extend(["是否预付:否"])
|
||
except (KeyError, TypeError):
|
||
pass
|
||
try:
|
||
msg_out.extend(["发卡国家:" + bin_json["country"]["name"]])
|
||
except (KeyError, TypeError):
|
||
pass
|
||
await message.edit("\n".join(msg_out))
|