Python Programming Blueprints
上QQ阅读APP看书,第一时间看更新

Casting Votes on Twitter

In the previous chapter, we implemented a Terminal application that serves as a remote control for the popular music service Spotify. In this application, we could search for artists, browse albums, and browse the tracks in each album. Lastly, we could even request the track to be played on the user's active device.

This time, we are going to develop an application that will integrate with Twitter, making use of its REST API. Twitter is a social network that has been around since 2006 and there are over 300 million active users. Private users, companies, artists, soccer clubs, you can find almost everything on Twitter. But what makes Twitter so popular, I believe, is its simplicity.

Unlike blog posts, Twitter posts or tweets have to be short and get right to the point, and it doesn't require too much time to prepare something to post. Another point that makes Twitter so popular is the fact that the service is a great news source. If you want to keep updated with what's going on in the world, politics, sports, technology, you name it, Twitter is the place to be.

Apart from all that, Twitter has a fairly decent API for us developers and, to take advantage of that, we are going to develop an application where users can cast votes using hashtags. In our application, we are going to configure which hashtags we are going to monitor and it will automatically, from time to time, fetch the latest tweets matching that hashtag, count them, and display them in a user interface.

In this chapter, you will learn how to do the following:

  • Create a tweet application
  • Use the OAuth library and implement a three-legged authentication flow
  • Search for the latest tweets using the Twitter API
  • Build a simple user interface using Tkinter
  • Learn the basics of multiprocessing and reactive programming