Skip to main content

Reddit bot to provide updates for video games.

Project description

upcoming-games

Reddit bot to update sidebar for /r/IGN. Can be configured for a variety of uses.

Usage

  1. Install Python 3.6 or greater if you have not already.

  2. Install the bot with pip install aav.upcoming-games. You may need to use sudo or pip3 or --user depending on your permissions, i.e. if you do not have sudo permissions and you also have Python 2 installed, you may need to use pip3 install --user aav.upcoming-games.

  3. Obtain a Reddit client ID and client secret from https://reddit.com/prefs/apps on the account you want to use for the bot.

  4. Set up your configuration file and template as mentioned in the ‘Configuration’ section.

  5. Run the bot from the command line with the full path to your config file: upcoming-games "/home/aav/my.yaml"

Developer Usage

  1. Install Python 3.6 or greater if you have not already.

  2. Install the bot with pip install aav.upcoming-games. You may need to use sudo or pip3 or --user depending on your permissions, i.e. if you do not have sudo permissions and you also have Python 2 installed, you may need to use pip3 install --user aav.upcoming-games.

  3. import upcoming_games

  4. You can use any of the three functions: get_all_games, get_markdown, post_table, and the class UpcomingGame as desired.

Configuration

Here is the default configuration file:

general:
  silent: False
  time_period: "7d"
  systems: []
  game_limit: 10
  table_format: "short"

reddit:
  client_id: "..."
  client_secret: "..."
  subreddit: "..."
  scripthost: "..."
  password: "..."
  post_type: "sidebar"
  template: 'path/to/template.txt'

Here’s what each setting is for:

  • general

    • silent - True if you don’t want any script output.

    • time_period - Valid time period for upcoming games (can be one of 7d, 1m, 3m, 6m, 12m, all).

    • system - List of consoles you want to include releases for. Empty means include all.

    • game_limit - Number of games you want for the Markdown table.

    • table_format - short for only the game name and first release, long for system details.

  • reddit

    • client_id - Your reddit bot’s client ID.

    • client_secret - Your reddit bot’s client secret.

    • subreddit - The subreddit (your must be a moderator) to post to/update the sidebar.

    • scripthost - The username for the bot account you registered for the client ID on.

    • password - The password for the bot account.

    • post_type - sidebar to update the sidebar, sticky to make a ‘bottom’ stickied post.

    • template - the full path to the template you want to use.

Note the template must contain somewhere in it the text %%%TABLE%%%, as this is where the Markdown table will be put. If no path or an invalid path is specified, the template used will be blank, i.e. it will only contain the Markdown table, nothing else.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aav.upcoming-games-0.1.0.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

aav.upcoming_games-0.1.0-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file aav.upcoming-games-0.1.0.tar.gz.

File metadata

File hashes

Hashes for aav.upcoming-games-0.1.0.tar.gz
Algorithm Hash digest
SHA256 32f85f92a70e9a9f6543b2c465d594c8ec703e6bf43f3f110f9c5583548376c3
MD5 bc0e8902378e34bde77a6f7e4a57ccd6
BLAKE2b-256 78b321b134c7692f08518808b6d00356094d3ffa1d707fe6a8909cc4a0387b09

See more details on using hashes here.

File details

Details for the file aav.upcoming_games-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aav.upcoming_games-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5dd0d8ecaf5269c8a877201c0056d9886c12b770ff86ce71c0afa1c45a4bb7ef
MD5 55bfeb740345c12dae0a15712cdd483d
BLAKE2b-256 5878afc4cdffa533d3bd1d26df64e6dcf0ab17d96f4c1090f84ba10de9eafda6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page