Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import re | |
| import textstat | |
| from langdetect import detect | |
| def text_analysis(text): | |
| # Analyze text: word count, character count, language detection, and readability | |
| words = re.findall(r'\w+', text.lower()) | |
| sentences = re.split(r'[.!?]+', text) | |
| num_sentences = len(sentences) - 1 | |
| num_words = len(words) | |
| num_chars = len("".join(words)) | |
| reading_ease = textstat.flesch_reading_ease(text) | |
| language = detect(text) | |
| # Format the results | |
| return { | |
| "Language": language, | |
| "Sentences": num_sentences, | |
| "Words": num_words, | |
| "Characters": num_chars, | |
| "Readability (Flesch Reading Ease)": reading_ease | |
| } | |
| # Define an interface for text analysis | |
| text_analysis_interface = gr.Interface(fn=text_analysis, | |
| inputs=gr.Textbox(lines=4, placeholder="Type something here..."), | |
| outputs=gr.JSON(label="Text Analysis")) | |
| # Launch the interface | |
| if __name__ == "__main__": | |
| text_analysis_interface.launch() | |