Skip to content
Extraits de code Groupes Projets

Feature : Birthday

Fusionnées Deurstann a demandé de fusionner dev-birthday vers main
1 file
+ 36
2
Comparer les modifications
  • Côte à côte
  • En ligne
+ 36
2
@@ -5,6 +5,8 @@ import random
@@ -5,6 +5,8 @@ import random
import re
import re
import csv
import csv
import aiohttp
import aiohttp
 
import requests
 
import datetime
from dotenv import load_dotenv
from dotenv import load_dotenv
@@ -14,6 +16,7 @@ TOKEN = os.getenv('DISCORD_TOKEN')
@@ -14,6 +16,7 @@ TOKEN = os.getenv('DISCORD_TOKEN')
SECRET = os.getenv('REDDIT_SECRET')
SECRET = os.getenv('REDDIT_SECRET')
REDDIT_ID = os.getenv('REDDIT_ID')
REDDIT_ID = os.getenv('REDDIT_ID')
REDDIT_AGENT = os.getenv('REDDIT_AGENT')
REDDIT_AGENT = os.getenv('REDDIT_AGENT')
 
HTTP_USER_AGENT = "Mozilla/5.0 (X11; Linux x86_64; rv:84.0) Gecko/20100101 Firefox/84.0"
PROXY = os.getenv('PROXY')
PROXY = os.getenv('PROXY')
postLimit = int(os.getenv('POST_LIMIT'))
postLimit = int(os.getenv('POST_LIMIT'))
@@ -79,6 +82,29 @@ def create_embed(post,author,posturl):
@@ -79,6 +82,29 @@ def create_embed(post,author,posturl):
def send_waifu(post, author, posturl):
def send_waifu(post, author, posturl):
return 'https://www.reddit.com' + str(posturl) + ' [' + str(author) + ']'
return 'https://www.reddit.com' + str(posturl) + ' [' + str(author) + ']'
 
def verify_date(day,month):
 
try:
 
datetime.datetime.strptime(day+"-"+month,"%d-%m")
 
except ValueError:
 
return False
 
return True
 
 
def create_embed_birthday(day,month):
 
embed = discord.Embed(
 
color = discord.Colour.blue()
 
)
 
if month[0]=='0':month=month[1]
 
if day[0]=='0':day = day[1]
 
url = "http://www.animecharactersdatabase.com/api_series_characters.php?month="+month+"&day="+day
 
request = requests.get(url,headers = {"User-Agent":HTTP_USER_AGENT})
 
request_json = request.json()
 
characters = request_json["characters"]
 
selected_character = characters[random.randint(0,len(characters))]
 
embed.set_image(url=selected_character["character_image"])
 
embed.description = selected_character["name"]
 
return embed
 
 
refresh_all_posts()
refresh_all_posts()
if PROXY != "":
if PROXY != "":
@@ -96,18 +122,26 @@ async def on_message(message):
@@ -96,18 +122,26 @@ async def on_message(message):
return
return
lower = message.content.lower()
lower = message.content.lower()
if lower == "show me an help" or lower == "show me a help":
if lower == "show me an help" or lower == "show me a help":
mess = "Usage : ``show me a xxxx`` or ``show me an xxxx`` or ``show me more xxxx``\nCurrently, I can show :```"
mess = "Usage : ``show me a xxxx`` or ``show me an xxxx`` or ``show me more xxxx`` or ``show me a/an/more bd DAY MONTH``\nCurrently, I can show :```"
for entry in subreddits.values():
for entry in subreddits.values():
mess += entry.name + " with a picture from r/" + entry.subName + "\n"
mess += entry.name + " with a picture from r/" + entry.subName + "\n"
mess += "\n```"
mess += "\n```"
await message.channel.send(mess)
await message.channel.send(mess)
if ("show me a" in lower) or ("show me more" in lower):
if ("show me a" in lower) or ("show me more" in lower):
 
birthday = re.search(r"show me (an?|more) bd ([0-9]+) ([0-9]+)", lower)
 
if birthday != None:
 
day = birthday.group(2)
 
month = birthday.group(3)
 
print('asking for birthday : ' + day + "/" + month)
 
if(not verify_date(day,month)):
 
return
 
await message.channel.send(embed = create_embed_birthday(day,month))
name = re.search(r"show me (an?|more) ([\S]+)s?", lower)
name = re.search(r"show me (an?|more) ([\S]+)s?", lower)
if name == None:
if name == None:
return
return
else:
else:
name = name.group(2)
name = name.group(2)
if name in subreddits.keys():
if name in subreddits.keys():
print('asking for the following entry: ' + name)
print('asking for the following entry: ' + name)
postnumber = random.randint(1,subreddits[name].totalimgs)
postnumber = random.randint(1,subreddits[name].totalimgs)
Chargement en cours