go back  25 - Notification Service of Now Playing and Upcoming Movies

This challenge write-up first appeared on PyBites.

A smooth sea never made a skilled sailor. - Franklin D. Roosevelt

Hi Pythonistas, a new week, a new 'bite' of Python coding! What movies are in theaters now or just came out on your favorite streaming service? What are upcoming movies, when will they be released? Can I keep track of all new humor movies? Or what about that specific actor or director? Having a notification service around movies seems an interesting, fun and useful code challenge to us.

The challenge

  • Basic: find a resource that updates with now playing and/or upcoming movies and consume it. Make a simple notification mechanism. We think an email would be best, but you could also try a bot of some kind (Twitter, Slack, ...). You are more into series? That's fine too. You could for example make a notification service around air dates of TV shows.

  • Intermediate: add command line switches to the script to filter on things like genre, director, actor, country, rating, streaming service.

  • Advanced: make a subscription service web app where the filters are check boxes and subscribers get customized emails based on their stored preferences.

A few resources

  • Google now playing/upcoming movies/series and you get a ton of resources. Just a few examples: Fadango, Imdb, Rotten tomatoes, etc. For series you could use airdates.tv for example.

  • If the resource has an API we recommend using it. One nice API for example is The Movie DB. Another open database you could use is TheTVDB.com.

  • If you want to make a bot, we did a few, just search our articles.

Getting ready

See our INSTALL doc how to fork our challenges repo to get cracking.

This doc also provides you with instructions how you can submit your code to our community branch via a Pull Request (PR). We will feature your PRs in our end-of-the-week challenge review (previous editions).


If you have ideas for a future challenge or find any issues, please contact us or open a GH Issue.

Last but not least: there is no best solution, only learning more and better Python. Good luck!

Keep Calm and Code in Python!

-- Bob and Julian

We use Python 3.8