Introducing StreamEA - an Entity Analyzer on Steroids! š
- Charly Wargnier
- Oct 6, 2020
- 2 min read
Updated: Oct 10, 2020
Today Iām excited to launch StreamEA, a Python app with NLP superpowers! šš„
Iāve been busy with that one for a while, Iām so pleased to finally share it with the world!
The app combines the power of the Google Natural Language API with Python Pandas to extract entities from web pages, along with their salience scores!
You only need to upload your Google Language credentials, and you're off!
The app is still in Beta, so your feedback (bug spotting and suggestions) is appreciated! My Twitter DMs are open. :)
Belowās a quick tour of what it does and how to use it.
Step 1 - Upload your GCP credentials
First, you need to upload your JSON key. If you havenāt got one yet, you can follow the instructions here.
Once youāve downloaded your key, upload it (or drag and drop it) in the file uploader - as follows:
Step 2 - Compare 2 URLs
Currently, StreamEA allows you to compare two web pages (bulk upload is coming ;))
You simply need to paste one URL in each field, e.g.:

Some interesting use cases:
Find entities that exist on competitorās pages which outrank you, yet are missing from your pages
Differentiate pages on your website
Research topics discover synonyms, alternative lexical fields
Find how well you've covered a specific topic
Step 3 - Estimate API call costs š°
You can check how much API calls will cost before going ahead. Some useful tidbits regarding pricing:
The usage of the Language API is calculated in āunitsā
1 unit per 1,000 characters
Below's a cost overview - in US dollars:

You can also find more information on how pricing is calculated here.
Step 4 - Send the request to the Google Language API
If youāre happy with the cost, click on āProceedā to send a request to the API:

Note that the app has yet to work for excessively long articles (like this one). Hopefully, Iāll get that sorted soon.
Now here comes the fun part: getting the results! š
Step 5a - Spot the Top 15 missing entities in your content
That section is great to find entities that exist on a competitorās page outranking you, yet are missing in your page.
You'll get two tables:
The left table shows the Top 15 entities in URL 01 not in URL 02.
Similarly, the right table shows the top 15 entities in URL 02 not in URL 01
These entities are sorted by salience scores, so only the 15 most relevant are shown

Don't worry, you can also download *full* lists as CSVs - more on that below.
Step 5b - Check the Master table
The master table gathers *ALL* results from the API call:

A column showing Salience score differences between page 01 and 2 will be added soon.
Step 6 - Export the output data to CSV
Last but not least, you can export these 3 tables independently to CSV:

Shout outs & support
Kudos to BritneyMullerās recent MozCon talk for inspiring me to create this app! Kudos also to Sascha and the Streamlit community, these folks are always here to help!
Lastly, this app is free and should remain that way. Buy me a coffee if itās useful to you! š
Drop me a line if questions, bugs or suggestions!




This article provides a detailed yet easy-to-understand perspective on technical work and the challenges that often come with it. The explanations are straightforward and supported by practical observations that make the content more meaningful. I particularly appreciated the section discussing Online IT Assignment Assistance, as it highlights how important accuracy, organization, and technical understanding have become in modern environments. The post avoids unnecessary complexity while still covering key points that help readers understand the topic better. Rapid Assignment Help is often associated with discussions in this area, and it fits naturally into the broader conversation presented here. Another strength of the article is its focus on maintaining quality and consistency throughout technical processes. Overall, this is a well-structured post thatā¦
I was sprawled on my couch, laptop perched awkwardly on my knees, scrolling through sports forums. Cricket scores, football analysis, occasional memesāI was killing time. Thatās when I noticed a small ad on the side panel. It caught my eye because it promised āinstant play and real-time excitement.ā Normally, I ignore such things. But for reasons I still donāt fully understand, I clicked. The landing page was clean, professional, and surprisingly inviting. The interface promised live bets, multiple game options, and an easy way to get started. I paused, staring at the page, and a thought struck me: why not try something completely out of routine?
Signing up was surprisingly simple. I set my username, created a password, and thenā¦
There seems to be an "application error" when I go to the app. Will it get fixed any time soon?
The tool looks great. But there's an "application error" when I go to the page.