The repository for the MapPorn bot on Reddit
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
GridCollage
data
documentation
misc_images
submitimages
voteimages
BotDisclaimer.txt
Congratulations.py
Congratulations_text.txt
VotingText.txt
WeeklySubmit.py
WhereWorld.py
backup.py
change_time_zone.py
checkinbox.py
classes.py
congratulations_year.py
dummy.py
functions.py
history.py
multi-post_top_of_week.py
oldmaps_topoftheday.py
papertowns_topoftheday.py
readme.md
requirements.txt
shotgunblast.py
soc_media_stack.py
status.py
test_db.py
top_of_month.py
voting_bestofyear.py
votingpost.py
yearagotop.py

readme.md

/r/MapPorn RedditBot

The MapPorn Redditbot is a suite of scripts that help automate and simplify moderation at /r/MapPorn.

Map Contest Tools

Every month we have a monthly map contest at /r/MapPorn. Users can submit a map at any time. On the landing page for the contest users are instructed to send a submission to a Reddit bot's inbox.

A raspberry pi runs the script checkforsubmissions.py every hour checking that inbox. When the bot receives a submission, it parses the message and adds a new line to a csv with the following fields:

  • Map Name
  • Map Image URL
  • Map Description
  • Map Author
  • Unique identifier for the submission

This CSV is used to create a Reddit contest post at the end of the month. The manually run script votingpost.py reads this CSV and creates a comment for each map submission. Users can upvote or downvote each comment.

While this is going on the CSV is renamed to submissions_current. That way if the RedditBot receives a new map submission it won't be confused in the current queue of maps being voted on.

After about a week, the contest ends. Then the script congratulations.py is manually run. This script gets the four highest rated comments (maps) and uses that data to make a new post to congratulate the winners. The CSV of submissions from that month is archived for a yearly contest at the end of the year.

Rules and information about the contest can be found here

Social Media Tools

Part of MapPorn's mission is to share maps across the internet. This means using platforms other than Reddit. In the python file functions.py there are functions for taking posts from /r/MapPorn and posting to Twitter, Tumblr and Facebook simultaneously. These functions use official APIs to interact with and post a link to a Reddit post to those accounts.

Some other social media scripts include:

Notes

See requirements.txt for full list of requirements. These scripts utilize PRAW, Tweepy, PyTumblr and Facebook-sdk. These packages require authorization tokens that are not provided in this repository.

Created by /u/Petrarch1603
2017 October