Pheme is a discord bot for price/status tracking of different nerdy products (games, series, cards).

Overview
Pheme is a discord bot that uses web scraping to search and track information about a products' status or price. The product can be a game (physical or digital format), a trading card (from any of the following franchises: magic the gathering, yu-gi-oh! or pokemon), an anime series or a manga series. The bot can also call different APIs to display a card's image (but only for magic the gathering and yu-gi-oh! cards).

The project is made of the following files:

1) Project_Presentation.pdf: PDF file with presentation slides that explain how to develop and host a discord bot online for free. This document provides very detailed (tutorial-like) explanations of all the commands and functions developed for the bot. Some of the functions might have suffered some changes since the creation of this PDF file, since the bot has received some patches and updates.

2) keep_running.py: This file contains the code for Pheme's web server (for online hosting purposes).

3) main.py: This file contains the main code for Pheme with all her tasks and commands. Inside this file you will find imports of functions present in files 2), 4) and 5).

4) birthday_tracker.py: File wiht a birthday tracking function.

5) tracking.py: File with all the product searching, tracking and showing functions.

List of Pheme commands:

a) Every 20h, Pheme checks if today is a user's birthday and if yes, print a birthday message for the user.

b) Every 10h, Pheme checks if the status/price of any item that she is currently tracked has suffered any positive changes (ex: a new manga chapter came out OR an item's price decreased). If yes, she informs the server by printing a message in the appropriate channels (ex: a message about cards is printed to the tcg channel). 

c) 'info pheme' prints information about Pheme.

d) 'search (category) (search)' takes the string after 'search', expecting the first word to be a category, and the remaining words to be the name of an item. Then, she prints the name and prices/statuses of the top most relevant results found (if any).

e) 'track (category) (search)' takes the string after 'track', expecting the first word to be a category, and the remaining words to be the name of an item that the user wants to start tracking. Then, Pheme searches the web for the item's current price/status information, adds it to a tracking file and prints a log message for the user.

f) 'list (category)' takes the word after 'list', expecting it to be a category. Then, it prints all the items being tracked by Pheme belonging to that category.

g) 'stop (category) (search)' takes the string after 'stop', expecting the first word to be a category, and the remaining words to be the name of an item that is currently being tracked by Pheme. Then, Pheme tries to remove the item from the tracking file and prints a log message. The name on the command must match the name on the file exactly.

h) 'show mtg (search)' takes the string after 'show mtg' and searches for an image of a Magic the Gathering card of the same name. Then, Pheme displays the image in the channel where the user requested it. Fuzzy search is possible.

i) 'show ygo (search)' takes the string after 'show ygo' and searches for an image of a Yu-Gi-Oh! card of the same name. Then, Pheme displays the image in the channel where the user requested it. The requested name must match the name on the card exactly (no fuzzy search allowed). 
You might also like...

A Discord Bot that includes games and fun commands such as Guess The Flag, Higher OR Lower and Guess the Country Shape!

A Discord Bot that includes games and fun commands such as Guess The Flag, Higher OR Lower and Guess the Country Shape!

Welcome To GeoBot GeoBot is a Discord Bot that includes games and fun geography-type features! Offers a plethora of config options to easily customise

Sep 4, 2022

Approaching Pedestrian Tracking problem on surveillance camera with YoloV5 for pedestrian detection and DeepSORT for tracking.

Approaching Pedestrian Tracking problem on surveillance camera with YoloV5 for pedestrian detection and DeepSORT for tracking.

Tracking with YoloV5 & DeepSORT Introduction DeepSORT basically is an improvement based on SORT which integrated a CNN feature extractor that helps re

Aug 30, 2022

A stat tracking website for the New World game, tracking war, player, and role stats!

A stat tracking website for the New World game, tracking war, player, and role stats!

NW-Stats.com is a stat tracking website for the New World game made by Amazon Game Studios. This website uses screenshots of war scoreboards submitted

Sep 9, 2022

YOLOv7 Object Tracking Using PyTorch, OpenCV and Sort Tracking

YOLOv7 Object Tracking Using PyTorch, OpenCV and Sort Tracking

yolov7-object-tracking New Features Added Label for Every Track Code can run on Both (CPU & GPU) Video/WebCam/External Camera/IP Stream Supported Comi

Sep 24, 2022

A python library for finding the best prices on trading cards from stores in New Zealand.

cardhunter-nz A python library for finding the best prices on trading cards singles from stores in New Zealand. Currently works for Magic: the Gatheri

Apr 4, 2022

Given the image of a yugioh card deck, the cards in this deck will be found and identified using object-detection with OpenCV

Given the image of a yugioh card deck, the cards in this deck will be found and identified using object-detection with OpenCV

Yugioh Card Identifier Summary Given the image of a yugioh card deck, the cards in this deck will be found and identified using object-detection with

Jun 6, 2022

Merge of two major cyber adversary datasets, MITRE ATT&CK and ETDA/ThaiCERT Threat Actor Cards, enabling victim/motivation-adversary-technique pivoting.

Merge of two major cyber adversary datasets, MITRE ATT&CK and ETDA/ThaiCERT Threat Actor Cards, enabling victim/motivation-adversary-technique pivoting.

Categorized Adversary TTPs MITRE ATT&CK x ThaiCERT = new pivot opportunities for TTP analysis & threat modeling Main dataset This is a (work in progre

Sep 27, 2022

A Pokemon card scanner that uses OpenCV to detect the cards and a MySQL database to determine which card the scan is.

Pokémon Card Scanner This repository contains Python code for a Pokémon card scanner and identifier for any card in the Evolutions Pokémon set. The co

Aug 27, 2022

Uses Stripe's Payment Gateway to process a list of cards

ℹ️ About Stripe-Gateway-Example ❓ What is it? This Program uses Stripe's Payment Gateway to process a list of cards from a text file. ⚙️ Installation

Aug 7, 2022
Owner
Monica Fidalgo
Monica Fidalgo
A discord bot for winterpixel games discord made by the community (This bot is not officially made by Winterpixel)

Winterpixel-Community-Bot A discord bot for winterpixel games discord made by the community (This bot is not officially made by Winterpixel) Requireme

Blaki 3 Jul 25, 2022
The project starts by contemplating the random generation of different weak entropies that may entrain common features in different methods in the creation of Private Keys for the different networks in the BlockChain.

RandomWeak Project Description Module 1 The idea of this repository is that anyone will be able to create an Ethereum, Avalanche, Arbitrum, BSC, Fanto

BetaShelley 2 Aug 29, 2022
A library with leveling cards for your discord bot.

DiscordLevelingCard A library with Rank cards for your discord bot. card preview card1 installation for pypi version pip install discordlevelingcard f

Reset 4 Sep 24, 2022
To check mysql read/write status and server status.

mysql-rw-status To check mysql read/write status and server status. Installation: (Linux machines only) 1. Install Pipenv. !pip install pipenv

Shipu 1 Sep 12, 2022
BOT Discord, Autorole, Status BOT, Commads.

BOTDiscord Olá, com esse BOT você pode ter um BOT padrão na sua Comunidade. O BOT contem uma linha de Código de AutoRole: @aclient.event async def on_

Lucas Eduardo 1 Sep 3, 2022
Get the discord mobile status using discord.py

Discord-iOS Make your bot appear on mobile. Report Bug · Request Feature pip install -U git+https://github.com/dropout1337/Discord-iOS/ import discor

dropout 7 Sep 20, 2022
Here are collected materials on games, with the help of which you can easily open on your computer and play simple games.

Hello! Some code is taken from this author: https://github.com/StanislavPetrovV/Python-Tetris/blob/master/main.py https://github.com/WISEPLAT/python-c

null 1 Jul 17, 2022
Bayesian average ratings of games on the Epic Games store (EGS).

Epic Games Ratings This repository contains Python code to data-mine ratings at the Epic Games Store (EGS). Requirements Install the latest version of

Wok 1 Sep 6, 2022
This script loads desired stock price training data, trains an XGBoost Regressor for Time Series Forecasting (allowing fine-tuning) and downloads the model to be used for prediction tasks

This script loads desired stock price training data, trains an XGBoost Regressor for Time Series Forecasting (allowing fine-tuning) and downloads the model to be used for prediction tasks. Specifically, it attempts to predict the following day's adjusted close price based on former days' adjusted close prices.

Lluís Salvat Niell 2 Jul 7, 2022
Python repository that uses time-series data from the S&P 500 to train a RandomForestClassifier to predict the probability of a stock price increasing or decreasing

Python repository that uses time-series data from the S&P 500 to train a RandomForestClassifier to predict the probability of a stock price increasing or decreasing. This script is meant for educational purposes only - this is not financial advice. Consult with your financial adviser before making any investments.

ddayto 9 Jul 21, 2022