danielcd99's picture
switched from deprecated TwitterUserScraper to TwitterProfileScraper
d0231e4
raw
history blame
No virus
1.24 kB
import streamlit as st
from snscrape.modules.twitter import TwitterProfileScraper
import pandas as pd
from Predict import *
from Scraper import *
from transformers import pipeline
# Model and pipeline
MODEL_PATH = 'danielcd99/multilanguage-toxicity-classifier'
def load_pipeline():
pipe=pipeline(
"text-classification",
model=MODEL_PATH
)
return pipe
pipe = load_pipeline()
# Title and subtitle
st.title("Toxicity Detector")
st.subheader("This is an app for detecting toxicity in tweets written in portuguese. "
"Write the username (without @) and select the number of tweets you want to check.")
# User information
with st.form(key='forms'):
st.markdown(
"""#### Tweets are classified in:
- 0: Harmless
- 1: Toxic
""")
username = st.text_input(label='Username:')
number_of_tweets = st.selectbox(
'How many tweets do you want to check?',
(5, 10, 20, 30))
submit_button = st.form_submit_button(label='Analyze')
if submit_button:
scraper = TwitterProfileScraper(username)
tweets = get_tweets(scraper, number_of_tweets)
predictions = get_predictions(tweets, pipe)
st.table(pd.DataFrame({'tweet': tweets, 'toxic':predictions}))