files reorganization
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
.env
|
.env
|
||||||
.idea
|
.idea
|
||||||
__pycache__
|
__pycache__
|
||||||
|
error_*.txt
|
||||||
+15
-6
@@ -4,25 +4,30 @@ import logging
|
|||||||
import discord
|
import discord
|
||||||
import re
|
import re
|
||||||
import tempfile
|
import tempfile
|
||||||
|
import sys
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from dotenv import load_dotenv
|
from dotenv import load_dotenv
|
||||||
|
|
||||||
from meme_otron import img_factory as imgf
|
from meme_otron import img_factory as imgf
|
||||||
from meme_otron import meme_db as db
|
from meme_otron import meme_db as db
|
||||||
from meme_otron import utils
|
from meme_otron import utils
|
||||||
from meme_otron import main
|
from meme_otron import meme_otron
|
||||||
|
|
||||||
VERSION = "1.0-dev"
|
VERSION = "1.0-dev"
|
||||||
t0 = datetime.now()
|
t0 = datetime.now()
|
||||||
logging.basicConfig(format="[%(asctime)s][%(levelname)s][%(module)s] %(message)s", level=logging.INFO)
|
logging.basicConfig(format="[%(asctime)s][%(levelname)s][%(module)s] %(message)s", level=logging.INFO)
|
||||||
|
|
||||||
imgf.load_fonts()
|
|
||||||
db.load_memes()
|
|
||||||
|
|
||||||
# Loading token
|
# Loading token
|
||||||
load_dotenv()
|
load_dotenv()
|
||||||
token = os.getenv('DISCORD_TOKEN')
|
token = os.getenv('DISCORD_TOKEN')
|
||||||
|
|
||||||
|
if token is None:
|
||||||
|
logging.error("No token was loaded, please verify your .env file")
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
imgf.load_fonts()
|
||||||
|
db.load_memes()
|
||||||
|
|
||||||
client = discord.Client()
|
client = discord.Client()
|
||||||
|
|
||||||
|
|
||||||
@@ -80,13 +85,13 @@ async def on_message(message):
|
|||||||
left_wmark_text = None
|
left_wmark_text = None
|
||||||
if not direct and len(args) > 1:
|
if not direct and len(args) > 1:
|
||||||
f"By {message.author.display_name}"
|
f"By {message.author.display_name}"
|
||||||
img = main.compute(*args, left_wmark_text=left_wmark_text)
|
img = meme_otron.compute(*args, left_wmark_text=left_wmark_text)
|
||||||
if img is None:
|
if img is None:
|
||||||
await message.channel.send(f"Template `{args[0]}` not found\n"
|
await message.channel.send(f"Template `{args[0]}` not found\n"
|
||||||
f"You can find a more detailed help and a list of templates at:\n"
|
f"You can find a more detailed help and a list of templates at:\n"
|
||||||
f"<https://github.com/klemek/meme-otron/tree/master/discord>")
|
f"<https://github.com/klemek/meme-otron/tree/master/discord>")
|
||||||
return
|
return
|
||||||
with tempfile.NamedTemporaryFile() as output:
|
with tempfile.NamedTemporaryFile(delete=False) as output:
|
||||||
img.save(output, format="JPEG")
|
img.save(output, format="JPEG")
|
||||||
response = None
|
response = None
|
||||||
if len(args) == 1:
|
if len(args) == 1:
|
||||||
@@ -95,6 +100,10 @@ async def on_message(message):
|
|||||||
response = f"A meme by {message.author.mention}:"
|
response = f"A meme by {message.author.mention}:"
|
||||||
await message.channel.send(response,
|
await message.channel.send(response,
|
||||||
file=discord.File(filename="meme.jpg", fp=output.name))
|
file=discord.File(filename="meme.jpg", fp=output.name))
|
||||||
|
try:
|
||||||
|
os.remove(output.name)
|
||||||
|
except PermissionError:
|
||||||
|
pass
|
||||||
if not direct:
|
if not direct:
|
||||||
try:
|
try:
|
||||||
await message.delete()
|
await message.delete()
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
import logging
|
||||||
|
import sys
|
||||||
|
import os
|
||||||
|
|
||||||
|
from . import img_factory as imgf
|
||||||
|
from . import meme_db as db
|
||||||
|
from . import meme_otron
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
db.load_memes()
|
||||||
|
imgf.load_fonts()
|
||||||
|
if len(sys.argv) <= 1 or sys.argv[1].lower().strip() == "help":
|
||||||
|
print("python -m meme_otron (meme_id) \"[text 1]\" \"[text 2]\" ... > file.jpg", file=sys.stderr)
|
||||||
|
else:
|
||||||
|
img = meme_otron.compute(*sys.argv[1:])
|
||||||
|
with os.fdopen(os.dup(sys.stdout.fileno())) as output:
|
||||||
|
img.save(output, format="jpeg")
|
||||||
@@ -1,6 +1,4 @@
|
|||||||
import logging
|
import logging
|
||||||
import sys
|
|
||||||
import os
|
|
||||||
|
|
||||||
from .types import Text, Pos
|
from .types import Text, Pos
|
||||||
from . import img_factory as imgf
|
from . import img_factory as imgf
|
||||||
@@ -34,7 +32,6 @@ def compute(*args, left_wmark_text=None, debug=False):
|
|||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
if len(args) < 1:
|
if len(args) < 1:
|
||||||
logger.warning("python3 meme_otron.py (meme_id) \"[text 1]\" \"[text 2]\" ... > file.jpg")
|
|
||||||
return None
|
return None
|
||||||
meme_id = args[0]
|
meme_id = args[0]
|
||||||
meme = db.get_meme(meme_id)
|
meme = db.get_meme(meme_id)
|
||||||
@@ -52,12 +49,3 @@ def compute(*args, left_wmark_text=None, debug=False):
|
|||||||
left_wmark.text = left_wmark_text
|
left_wmark.text = left_wmark_text
|
||||||
meme.texts += [left_wmark]
|
meme.texts += [left_wmark]
|
||||||
return imgf.make(meme.template, meme.texts, debug=debug)
|
return imgf.make(meme.template, meme.texts, debug=debug)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
logging.basicConfig(format="[%(asctime)s][%(levelname)s][%(module)s] %(message)s", level=logging.DEBUG)
|
|
||||||
db.load_memes()
|
|
||||||
imgf.load_fonts()
|
|
||||||
img = compute(*sys.argv[1:])
|
|
||||||
with os.fdopen(os.dup(sys.stdout.fileno())) as output:
|
|
||||||
img.save(output, format="jpeg")
|
|
||||||
Reference in New Issue
Block a user