Social Network Analytic is very important to understand who people contribute in that and what is the sentiment of trending topics, in social media you will found politics or social issue, the data can be grab and analyze to understand is this negative or positive campaign for example.
This time i will share you one tool to analyze trending topics, hashtags or keyword on twitter, this tool called CuriousTrends coded by wibisono with scala programming language . This tool will help you to grab and display anyone who participates in it, accounts age, how many followers and corelation between one account with other accounts.
Analysing curious trending topic based on an existing gist that observes user characteristics of a certain trending topic/hashtags. Some indication of trending hash tag is considered curious:
- mainly promoted by relatively new accounts
- most of them are having few followers
- some of them tweet an unusual amount of tweet per user
All of these indicator are just a hunch, no solid base.
- no persistence, no rate limit throttling so you might hit free rate limit
- hashtags were just appended everytime you open another trends link
- trying to push data from backend to frontend for updates, but when tracking keywords that are not frequently mentioned you might endup with blank page with no data.
First you need to install sbt an open source build tool for Scala and Java projects.
echo "deb https://dl.bintray.com/sbt/debian /" | sudo tee -a /etc/apt/sources.list.d/sbt.list sudo apt-key adv --keyserver hkps://keyserver.ubuntu.com:443 --recv 2EE0EA64E40A89B84B2DF73499E82A75642AC823 sudo apt-get update sudo apt-get install sbt
and then clone or download the CuriousTrends
First configure twitter settings:
- Rename twitter.conf.example into twitter.conf
- Setup your twitter API keys in that file.
Perpare the build with:
Then you can run:
http://localhost:9000/#/trends/[hashtag] to see current state of curious trend of [hashtag], should be pushing live update from backend. Everytime you open this endpoint with additional hashtag it will accumulate, and the more you did this you might hit twitter Rate limit for your API. Either that or memory limit at some point, current implementation has no backend/persistence support.
http://localhost:9000/assets/2d/ to see 2d visualization using d3 js. Improper integration with d3 js assuming you run this without modification on port 9000 on localhost. Still don’t know how to properly use udash for this.
http://localhost:9000/assets/3d/ the 3d visualization. For both of these visualization, no live update/push from backend, it’s pull based you need to refresh to get the latest data.
This is an example of normal generic trending topics user characteristics looks like (ramos after dirty wins of Real madrid):
Unfortunately I have not yet found another curious trends to be analysed using this newly build, work in progress, udash based analyser, what I currently have is just previous result of original gist that shows skewed user attributes that promote a certain tag, related to Indonesian politics (#HTILanjutkanPerjuangan):
Meanwhile, visualization of retweet graph using d3.js 3d force graph: