climb_bot posts links to rock climbing routes and areas on MountainProject.com. climb_bot is monitoring the subreddits r/climbing and r/test. climb_bot searches MountainProject for the closest match and links to it, so partial information can often still give a relevant reply.
If climb_bot can't find a match, it won't post a reply at all. Comments that have not been replied to by climb_bot can be edited and climb_bot will keep attempting to find a link. But once a climb_bot replies, it won't look at that comment again.
climb_bot looks for the command 'climb:' or '!climb' in comments. adding the keyword 'area' searches for areas on MountainProject. Examples:
- Climb: The Nose, Yosemite
- climb: The Nose, Yosemite
- !Climb The Nose, Yosemite
- !climb The Nose, Yosemite
- climb: area Yosemite Valley
- !climb area Yosemite Valley
climb_bot is written in Python 3 and hosted on PythonAnywhere. It requires the PRAW and BeautifulSoup4, and uses a SQLite3 database to record comments that are replied to. The configuration file for the bot is stored in JSON and loaded by Config.py. The reddit logic is in climb_bot.py and replies generated from MountainProject are parsed in Route.py and Area.py.