Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Clone this wiki locally
Event Registry is a Python package that can be used to easily access the data available in the Event Registry (http://eventregistry.org/) through the provided API.
Event Registry package can be installed using Python's pip installer. In the command line, simply type:
pip install eventregistry
and the package should be installed. Alternatively, you can also clone the package from the GitHub repository at https://github.com/gregorleban/EventRegistry. After cloning it, open the command line and run:
python setup.py install
To ensure the package has been properly installed run python and type:
If you don't get any error messages then your installation has been successful.
Updating the package
As features are added to the package you will need at some point to update it. In case you have downloaded the package from GitHub simply do a
git pull. If you have installed it using the
pip command, then simply run
pip install eventregistry --upgrade
Authentication and API key
When making queries to Event Registry you will have to use an API key that you can obtain for free. The details how to obtain and use the key are described in the Authorization section.
Four simple examples to get you interested
Print a list of recently added news articles or blog posts mentioning phrases "George Clooney" or "Sandra Bullock"
from eventregistry import * er = EventRegistry(apiKey = YOUR_API_KEY) q = QueryArticlesIter( keywords = QueryItems.OR(["George Clooney", "Sandra Bullock"]), dataType = ["news", "blog"]) # obtain at most 500 newest articles or blog posts for art in q.execQuery(er, sortBy = "date", maxItems = 500): print art
Search for latest events related to Star Wars
from eventregistry import * er = EventRegistry(apiKey = YOUR_API_KEY) q = QueryEvents(keywords = "Star Wars") q.setRequestedResult(RequestEventsInfo(sortBy = "date", count = 50)) # request event details for latest 50 events # get the full list of 50 events at once print er.execQuery(q)
Search for articles that (a) mention immigration, (b) are related to business, and (c) were published by news sources located in New York City
from eventregistry import * er = EventRegistry(apiKey = YOUR_API_KEY) q = QueryArticlesIter( # here we don't use keywords so we will also get articles that mention immigration using various synonyms conceptUri = er.getConceptUri("immigration"), categoryUri = er.getCategoryUri("business"), sourceLocationUri = er.getLocationUri("New York City")) # obtain 500 articles that have were shared the most on social media (Facebook, G+, LinkedIn, ...) for art in q.execQuery(er, sortBy = "socialScore", maxItems = 500): print art
What are the currently trending topics
from eventregistry import * er = EventRegistry(apiKey = YOUR_API_KEY) # top 10 trending concepts in the news q = GetTrendingConcepts(source = "news", count = 10) print er.execQuery(q)
Where to next?
Depending on your interest and existing knowledge of the
eventregistry package you can check different things:
Terminology. There are numerous terms in the Event Registry that you will constantly see. If you don't know what we mean by an event, story, concept or category, you should definitely check this page first.
EventRegistry class. You will need to use the
EventRegistry class whenever you will want to interact with Event Registry so you should learn about it.
Details about articles/events/concepts/categories/... that we can provide. When you will be requesting information about events, articles, concepts, and other things, what details can you ask for each of these?
Querying events. Check this page if you are interested in searching for events that match various search criteria, such as relevant concepts, keywords, date, location or others.
Querying articles. Read if you want to search for articles based on the publisher's URL, article date, mentioned concepts or others.
Trends. Are you interested in finding which concepts are currently trending the most in the news? Maybe which movie actor is most popular in social media? How about trending of various news categories?
Articles and events shared the most on social media. Do you want to get the list of articles that have been shared the most on Facebook and Twitter on a particular date? What about the most relevant event based on shares on social media?
Daily mentions and sentiment of concepts and categories. Are you interested in knowing how often was a particular concept or category mentioned in the news in the previous two years? How about the sentiment expressed on social media about your favorite politician?
Correlations of concepts. Do you have some time series of daily measurements? Why not find the concepts that correlate the most with it based on the number of mentions in the news.
Data access and usage restrictions
Event Registry is a commercial service but it allows also unsubscribed users to perform a certain number of operations. Non-paying users are not allowed to use the obtained data for any commercial purposes (see the details on our Terms of Service page) and have access to only last 30 days of content. In order to avoid these restrictions please contact us about the available plans.