Unfortunately I’m not familiar with Laravel, but I think I’ll look into it for another project. You’ll want to use both the Stream and REST APIs. I generally use Stream to see what’s going on right now, and REST to get granular.
Both of these may help.
Now on the point to point
- When using search API, you’ll get the tweet (post) do check mark.
- Search can give you up to 7 days back of users who have tweeted it, but I believe it’ll just be a sample. You’ll need to use Stream to collect full activity.
- That’ll be interesting. You’ll need to to use REST to get followers count of every user who has tweeted whatever you’re looking for.
- Twitter has stated this is not a priority for them, unless you go with Gnip.
REST API support for Impressions data?
- Look for other hashtags the users have included in the tweets you’ve collected. For example #ios would also include #apple, #iphone, etc. Strip the tweet into an array of words, collect all words starting with #, then do a frequency analysis. Chances are the top 5 are most relevant. I say chances are because depending on your specific search, you may get more noise than quality.
- retweet_count and favorite_count will get you there.
https://dev.twitter.com/overview/api/tweets
- Urls_entity is what you’re looking for
https://dev.twitter.com/overview/api/entities-in-twitter-objects
- Coordinates is what you’re looking for. Location may not be relevant. Refer to 6 for link.
- I don’t understand.
- That’s somewhat difficult. You will need to find a tool that uses natural language processing to help you with that. There are some great Python tools.
http://www.nltk.org
Or read these and roll your own.
https://en.m.wikipedia.org/wiki/Sentiment_analysis
https://blog.hootsuite.com/beginners-guide-sentiment/
- That seems to only be available for ad campaigns. Going deeper into what I said in 10, you could make somewhat educated guesses about the demographics about the users if you had enough tweets from each user. But there are a lot of variables. Best to research this further. There may be services, libraries, or techniques out there already.
All this being said:
First you need to fully understand what you want. Whip out your notepad and write exactly what you want, step by step.
Second you need to understand what Twitter can/will provide. Reading and then rereading all the documentation is a must.
Finally you’ll understand what you can do.
There are plenty of tools, tutorials, libraries to help you. Don’t try to recreate the wheel, unless you’re that kind of person. I know I am, so I know it’s usually not worth the effort, unless the goal is learning itself.
(Disclaimer: when using other people’s tools or libraries always be sure to follow their licenses.)