Wikipedia WordCloud App

python
streamlit
edge
terminal
vscode

Wikipedia WordCloud App generate Wikipedia word cloud art created using python’s streamlit, matplotlib, wikipedia and wordcloud packages

Installation :-

To install all necessary requirement packages for the app ?

pip install -r requirements.txt

Packages Used :-

import string
import matplotlib.pyplot as plt
import streamlit as st
import wikipedia
from wordcloud import WordCloud

Function To Generate WordCloud :-

def get_wordcloud(page_name, max_word, max_font, colormap):
    wiki_page = None
    try:
        wiki_page = wikipedia.page(page_name) 
    except wikipedia.DisambiguationError as e:
        wiki_page = wikipedia.page(e.options[0])
    except wikipedia.PageError as e:
        st.text(f"Page {page_name} does not match any pages. Try another.")

    if wiki_page is None:
        return None, None, None

    wiki_text = wiki_page.content
    wiki_title = wiki_page.title
    wiki_url = wiki_page.url

    allowed_chars = (string.ascii_letters + string.digits + " ")
    for char in wiki_text:
        if (char not in allowed_chars):
            wiki_text = wiki_text.replace(char, "")
    wiki_text = wiki_text.lower()

    wiki_words = " ".join(wiki_text.split(" ")) + ""

    wordcloud = WordCloud(
        width=800,
        height=800,
        colormap=colormap,
        max_words=max_word,
        max_font_size=max_font,
    ).generate(wiki_words)
    
    return (wordcloud, wiki_title, wiki_url)

App Interface ?:-

app_interface

Output Image ?:-

output_image

GitHub

View Github