spamprediction / app.py
Abhinav Jangra
Upload app.py
75f6b3f
raw
history blame contribute delete
No virus
1.17 kB
import streamlit as st
import pickle
import string
from nltk.corpus import stopwords
import nltk
nltk.download('punkt')
nltk.download('stopwords')
from nltk.stem.porter import PorterStemmer
ps=PorterStemmer()
def transform_text(text):
text=text.lower()
text=nltk.word_tokenize(text)
y=[]
for i in text:
if i.isalnum():
y.append(i)
text=y[:]
y.clear()
for i in text:
if i not in stopwords.words('english') and i not in string.punctuation:
y.append(i)
text=y[:]
y.clear()
for i in text:
y.append(ps.stem(i))
return " ".join(y)
tfidf=pickle.load(open('vectorizer.pkl','rb'))
model=pickle.load(open('model.pkl','rb'))
st.title("EMAIL/SMS SPAM CLASSIFIER")
#follow documentation for syntax and fn
input_sms=st.text_input("Enter the message :)")
if st.button('predict'):
#1.preprocess
transformed_sms=transform_text(input_sms)
#2.vectorize
vector_input=tfidf.transform([transformed_sms])
#3.predict
result=model.predict(vector_input)[0]
#4.display
if result==1:
st.header("make some friends loner")
else:
st.header("not spam uwu")