Spaces:
Sleeping
Sleeping
| import pickle | |
| import nltk | |
| import re | |
| from nltk.corpus import stopwords | |
| from nltk.stem import PorterStemmer | |
| from nltk.stem import WordNetLemmatizer | |
| import streamlit as st | |
| nltk.download('stopwords') | |
| nltk.download('wordnet') | |
| stemmer = PorterStemmer() | |
| lemmatizer = WordNetLemmatizer() | |
| cv = pickle.load(open('pickle_files/count_vectorizer.pkl', 'rb')) | |
| model = pickle.load(open('pickle_files/spam_model.pkl', 'rb')) | |
| def spam_or_ham(message): | |
| message = re.sub('[^a-zA-Z]', ' ', message) | |
| message = message.lower() | |
| message = message.split() | |
| message = [lemmatizer.lemmatize(word) for word in message if word not in set(stopwords.words('english'))] | |
| message = ' '.join(message) | |
| X = cv.transform([message]).toarray() | |
| prediction = model.predict(X) | |
| if prediction: | |
| return 'Not Spam' | |
| else: | |
| return 'Spam' | |
| st.title("Spam Classifier") | |
| message = st.text_input("Type a Message") | |
| if st.button("Check Spam or Ham"): | |
| if message: | |
| spam_check = spam_or_ham(message) | |
| st.write(spam_check) | |
| else: | |
| st.write('Empty Message') |