Recently I was given the task of building a search feature that will find all geolocations of Tweets with a keyword and/or hashtag.
The Twitter REST API has the following limitations:
- User must enable Location for their Tweet — This removes a lot of the sample size
- A Tweet REST API query can only target specific geo coordinates, along with a radius
- The Search API’s recent index only spans for the last 6-9 days
Using my Drupal 8 Twitter module as a template, I was easily able to make this work for finding locations within the intercontinental United States.
$params = array(
"q" => $this->keyword,
"count" => $this->num_results,
"result_type" => "mixed",
"lang" => "en",
"geocode" => "39.8,-95.583068847656,2500km",
);
$tweets = $twitter->get("search/tweets", $params);
Basically, I’m polling for all tweets with a radius of our country starting in roughly the middle. Thanks to ThoughtFacet for the tip.
So this is a nice workaround if you are looking for Tweets that have geolocations.