2
0
mirror of https://github.com/Nick80835/microbot synced 2025-09-03 16:05:49 +00:00

move shit

This commit is contained in:
Nick80835
2020-09-13 13:50:36 -04:00
parent 710c3d9dae
commit d38f6f9784
19 changed files with 108 additions and 109 deletions

View File

@@ -1 +1,91 @@
import ubot.micro_bot # SPDX-License-Identifier: GPL-2.0-or-later
import sys
from logging import INFO, basicConfig, getLogger
import telethon as tt
from telethon.errors.rpcerrorlist import PhoneNumberInvalidError
from telethon.network.connection.tcpabridged import \
ConnectionTcpAbridged as CTA
from .loader import Loader
from .settings import Settings
if sys.version_info.major < 3 or (sys.version_info.major == 3 and sys.version_info.minor < 6):
print("This program requires at least Python 3.6.0 to work correctly, exiting.")
sys.exit(1)
class MicroBot():
client = None
settings = Settings()
logger = None
loader = None
def __init__(self):
self.start_logger()
self.start_client()
self.start_loader()
def run_until_done(self):
self.loader.load_all_modules()
self.logger.info("Client successfully started.")
self.client.run_until_disconnected()
self.client.loop.run_until_complete(self.loader.aioclient.close())
def start_loader(self):
self.loader = Loader(self.client, self.logger, self.settings)
def start_logger(self):
basicConfig(format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", level=INFO)
self.logger = getLogger(__name__)
def _check_config(self):
session_name = self.settings.get_config("session_name")
api_key = self.settings.get_config("api_key")
api_hash = self.settings.get_config("api_hash")
while not api_key:
api_key = input("Enter your API key: ")
self.settings.set_config("api_key", api_key)
while not api_hash:
api_hash = input("Enter your API hash: ")
self.settings.set_config("api_hash", api_hash)
if not session_name:
session_name = "user0"
self.settings.set_config("session_name", session_name)
return api_key, api_hash, session_name
def start_client(self):
api_key, api_hash, session_name = self._check_config()
self.client = tt.TelegramClient(session_name, api_key, api_hash, connection=CTA)
try:
self.client.start()
except PhoneNumberInvalidError:
self.logger.error("The phone number provided is invalid, exiting.")
sys.exit(2)
async def stop_client(self, reason=None):
if reason:
self.logger.info("Stopping client for reason: %s", reason)
else:
self.logger.info("Stopping client.")
await self.loader.aioclient.close()
await self.client.disconnect()
micro_bot = MicroBot()
ldr = micro_bot.loader
try:
micro_bot.run_until_done()
except:
micro_bot.client.loop.run_until_complete(micro_bot.stop_client())

View File

@@ -1,91 +0,0 @@
# SPDX-License-Identifier: GPL-2.0-or-later
import sys
from logging import INFO, basicConfig, getLogger
import telethon as tt
from telethon.errors.rpcerrorlist import PhoneNumberInvalidError
from telethon.network.connection.tcpabridged import \
ConnectionTcpAbridged as CTA
from .loader import Loader
from .settings import Settings
if sys.version_info.major < 3 or (sys.version_info.major == 3 and sys.version_info.minor < 6):
print("This program requires at least Python 3.6.0 to work correctly, exiting.")
sys.exit(1)
class MicroBot():
client = None
settings = Settings()
logger = None
loader = None
def __init__(self):
self.start_logger()
self.start_client()
self.start_loader()
def run_until_done(self):
self.loader.load_all_modules()
self.logger.info("Client successfully started.")
self.client.run_until_disconnected()
self.client.loop.run_until_complete(self.loader.aioclient.close())
def start_loader(self):
self.loader = Loader(self.client, self.logger, self.settings)
def start_logger(self):
basicConfig(format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", level=INFO)
self.logger = getLogger(__name__)
def _check_config(self):
session_name = self.settings.get_config("session_name")
api_key = self.settings.get_config("api_key")
api_hash = self.settings.get_config("api_hash")
while not api_key:
api_key = input("Enter your API key: ")
self.settings.set_config("api_key", api_key)
while not api_hash:
api_hash = input("Enter your API hash: ")
self.settings.set_config("api_hash", api_hash)
if not session_name:
session_name = "user0"
self.settings.set_config("session_name", session_name)
return api_key, api_hash, session_name
def start_client(self):
api_key, api_hash, session_name = self._check_config()
self.client = tt.TelegramClient(session_name, api_key, api_hash, connection=CTA)
try:
self.client.start()
except PhoneNumberInvalidError:
self.logger.error("The phone number provided is invalid, exiting.")
sys.exit(2)
async def stop_client(self, reason=None):
if reason:
self.logger.info("Stopping client for reason: %s", reason)
else:
self.logger.info("Stopping client.")
await self.loader.aioclient.close()
await self.client.disconnect()
micro_bot = MicroBot()
ldr = micro_bot.loader
try:
micro_bot.run_until_done()
except:
micro_bot.client.loop.run_until_complete(micro_bot.stop_client())

View File

@@ -9,7 +9,7 @@ from platform import python_version
import psutil import psutil
from telethon import version from telethon import version
from ubot.micro_bot import ldr, micro_bot from ubot import ldr, micro_bot
@ldr.add("eval", owner=True, hide_help=True) @ldr.add("eval", owner=True, hide_help=True)

View File

@@ -1,6 +1,6 @@
# SPDX-License-Identifier: GPL-2.0-or-later # SPDX-License-Identifier: GPL-2.0-or-later
from ubot.micro_bot import ldr from ubot import ldr
CAT_URL = 'http://api.thecatapi.com/v1/images/search' CAT_URL = 'http://api.thecatapi.com/v1/images/search'
DOG_URL = 'http://api.thedogapi.com/v1/images/search' DOG_URL = 'http://api.thedogapi.com/v1/images/search'

View File

@@ -4,7 +4,7 @@ from time import time_ns
from telethon import Button from telethon import Button
from ubot.micro_bot import ldr from ubot import ldr
DAN_URL = "http://danbooru.donmai.us/posts.json" DAN_URL = "http://danbooru.donmai.us/posts.json"
DAN_SAUCE_URL = "https://danbooru.donmai.us/posts/" DAN_SAUCE_URL = "https://danbooru.donmai.us/posts/"

View File

@@ -30,7 +30,7 @@ from random import randint, uniform
from PIL import Image, ImageEnhance from PIL import Image, ImageEnhance
from ubot.micro_bot import ldr from ubot import ldr
@ldr.add("deepfry", pattern_extra="(f|)", userlocking=True, help="Deepfries images, takes a number of passes as an argument.") @ldr.add("deepfry", pattern_extra="(f|)", userlocking=True, help="Deepfries images, takes a number of passes as an argument.")

View File

@@ -5,7 +5,7 @@ import io
from PIL import Image, ImageOps from PIL import Image, ImageOps
from speedtest import Speedtest from speedtest import Speedtest
from ubot.micro_bot import ldr from ubot import ldr
@ldr.add("speed", owner=True, hide_help=True) @ldr.add("speed", owner=True, hide_help=True)

View File

@@ -2,7 +2,7 @@
from random import choice, shuffle from random import choice, shuffle
from ubot.micro_bot import ldr from ubot import ldr
BOARD_URL = "https://a.4cdn.org/{0}/threads.json" BOARD_URL = "https://a.4cdn.org/{0}/threads.json"
POST_URL = "https://a.4cdn.org/{0}/thread/{1}.json" POST_URL = "https://a.4cdn.org/{0}/thread/{1}.json"

View File

@@ -2,7 +2,7 @@
from random import choice from random import choice
from ubot.micro_bot import ldr from ubot import ldr
bot_name = ldr.settings.get_config("bot_name") or "bot" bot_name = ldr.settings.get_config("bot_name") or "bot"

View File

@@ -4,7 +4,7 @@ from time import time_ns
from telethon import Button from telethon import Button
from ubot.micro_bot import ldr from ubot import ldr
GEL_URL = "https://gelbooru.com/index.php" GEL_URL = "https://gelbooru.com/index.php"
GEL_SAUCE_URL = "https://gelbooru.com/index.php?page=post&s=view&id=" GEL_SAUCE_URL = "https://gelbooru.com/index.php?page=post&s=view&id="

View File

@@ -2,7 +2,7 @@
from random import choice from random import choice
from ubot.micro_bot import ldr from ubot import ldr
emoji = list("😂😝🤪🤩😤🥵🤯🥶😱🤔😩🙄💀👻🤡😹👀👁👌💦🔥🌚🌝🌞🔫💯") emoji = list("😂😝🤪🤩😤🥵🤯🥶😱🤔😩🙄💀👻🤡😹👀👁👌💦🔥🌚🌝🌞🔫💯")
b_emoji = "🅱️" b_emoji = "🅱️"

View File

@@ -4,7 +4,7 @@ import io
from PIL import Image from PIL import Image
from ubot.micro_bot import ldr from ubot import ldr
NEKO_URL = "https://nekos.life/api/v2/img/" NEKO_URL = "https://nekos.life/api/v2/img/"
NEKO_TYPES_NSFW = ['lewd', 'tits', 'trap', 'anal', 'gasm', 'spank', 'feet', 'blowjob'] NEKO_TYPES_NSFW = ['lewd', 'tits', 'trap', 'anal', 'gasm', 'spank', 'feet', 'blowjob']

View File

@@ -3,7 +3,7 @@
import asyncpraw import asyncpraw
from asyncprawcore import exceptions as redex from asyncprawcore import exceptions as redex
from ubot.micro_bot import ldr from ubot import ldr
REDDIT = asyncpraw.Reddit(client_id='-fmzwojFG6JkGg', REDDIT = asyncpraw.Reddit(client_id='-fmzwojFG6JkGg',
client_secret=None, client_secret=None,

View File

@@ -4,7 +4,7 @@ from time import time_ns
from telethon import Button from telethon import Button
from ubot.micro_bot import ldr from ubot import ldr
SAN_URL = "https://capi-v2.sankakucomplex.com/posts" SAN_URL = "https://capi-v2.sankakucomplex.com/posts"
SAN_SAUCE_URL = "https://beta.sankakucomplex.com/post/show/" SAN_SAUCE_URL = "https://beta.sankakucomplex.com/post/show/"

View File

@@ -13,7 +13,7 @@ from telethon.tl.types import DocumentAttributeVideo
from ubot.fixes.fast_telethon import upload_file from ubot.fixes.fast_telethon import upload_file
from ubot.fixes.parallel_download import download from ubot.fixes.parallel_download import download
from ubot.micro_bot import ldr from ubot import ldr
os.environ["HOWDOI_SEARCH_ENGINE"] = "bing" os.environ["HOWDOI_SEARCH_ENGINE"] = "bing"

View File

@@ -4,7 +4,7 @@ import io
from PIL import Image from PIL import Image
from ubot.micro_bot import ldr from ubot import ldr
@ldr.add("color") @ldr.add("color")

View File

@@ -2,7 +2,7 @@
from time import time_ns from time import time_ns
from ubot.micro_bot import ldr from ubot import ldr
@ldr.add("del", help="Deletes messages from this bot, it's a safety feature.") @ldr.add("del", help="Deletes messages from this bot, it's a safety feature.")

View File

@@ -2,7 +2,7 @@
import io import io
from ubot.micro_bot import ldr from ubot import ldr
UD_QUERY_URL = 'http://api.urbandictionary.com/v0/define' UD_QUERY_URL = 'http://api.urbandictionary.com/v0/define'
UD_RANDOM_URL = 'http://api.urbandictionary.com/v0/random' UD_RANDOM_URL = 'http://api.urbandictionary.com/v0/random'

View File

@@ -4,7 +4,7 @@ from time import time_ns
from telethon import Button from telethon import Button
from ubot.micro_bot import ldr from ubot import ldr
YAN_URL = "https://yande.re/post.json" YAN_URL = "https://yande.re/post.json"
YAN_SAUCE_URL = "https://yande.re/post/show/" YAN_SAUCE_URL = "https://yande.re/post/show/"