Personalize your Bot

There are tons of free, easily accessible data sources you can use to create interesting bots. Some of my favorites are:

  • Wikimedia provides free, public APIs for all of their services including Wikipedia and Wikihow. Uses simple GET requests with no authentication required. There is documentation as well as a Python wrapper. Cool bots that use the Wikimedia API include @wikisext and @how2butt.
  • Tweepy, the library we used to send tweets from our sample bot, can also be used to search and reply to tweets. Tweepy is very well documented.
  • Google has a lot of different free, public APIs that have basic authentication and usage limit requirements. The whole list of Google APIs is here. @earthroverbot and @youareherebot use the Google Maps API.
  • ITunes has a search API that provides information on music, movies, and other media for free and with no authentication.
  • Pokeapi has a wealth of pokemon data free and with no authentication steps.

Here's a mostly complete list of Python API wrappers.

It's also possible to make a unique bot without many changes or additions to the template. @everyportland is a bot that has very minor differences from the original template. It tweets from a list of English nouns instead of a book, plus a Portland-specific modifier (i.e. "Natural abacuses").


You can check out the source code for these Python Twitter bots for ideas or examples:

  • @taco_helper creates fantastical Taco Bell menu items and suggests them to people who are selected based on their recent tweets.
  • @angryrichpeople posts 1 star reviews of $$$$ Yelp reviews
  • @crystalliser takes an image and "crystallizes" it.
  • @emoji_haiku creates haikus out of emoji.
  • @gutendelight makes rhyming couplets out of hip hop lyrics and classic literature.
  • @kaikkisanat is tweeting every word in Finnish.
  • @permitbot reports on building permits filed in Chicago.

BotWiki maintains a list of Twitter bots which are not all open source or written in Python.

Pick out a couple APIs that look interesting to you, even if you're not sure how you'll turn it into a bot. We'll go over how to use an API in the next chapter.

results matching ""

    No results matching ""