- Collect data via the Twitter Streaming API
- Store Tweet (text, date, username, picture url, language, coordinates if present) at a MongoDB database
- Store Picture in an external directory
- Collected data can be displayed via web interface or via Rest API
...
- Clone the repository by running
git clone https://github.com/PySualk/TwitterPictureGatherer.git
- As a first step please open the file
application.properties
and modify your configuration here. - Configure your MongoDB connection by entering hostname and port and optionally username and password.
- Configure the local directory where the pictures are being stored (the application only gatheres Tweets with pictures).
- Enter your consumer key, consumer secret, access token and access secret obtained from Twitter. If you did not have them yet register with your Twitter account at https://dev.twitter.com/.
- Download and install Maven
- Now you are able to build a standalone jar file with your configuration by running
mvn clean install
or simply start the application withmvn spring-boot:run
- Define some jobs, so the application is able to gather some data from Twitter for you.
- By pressing
Start Gathering Tweets
the application starts collecting Tweets from the Twitter Streaming API. All Tweets that match your defined jobs are being stored at the MongoDB database. The corresponding pictures are being stored at the local directory you defined earlier.
- Backend: Spring Boot, MongoDB, Maven, Twitter Hosebird Client
- Frontend: AngularJS, Bower, Bootstrap, Bootswatch