Spaces:
Runtime error
Runtime error
| import re | |
| import tweepy | |
| import pandas as pd | |
| import gradio as gr | |
| import itertools | |
| import collections | |
| from collections import Counter | |
| import numpy as np | |
| from transformers import pipeline | |
| classifier = pipeline('sentiment-analysis') | |
| summarizer= pipeline("summarization", max_length=10) | |
| #hashtag_phrase ="#datascience" | |
| #recent_tweet_count_you_want =100 | |
| def search_hashtag1(hashtag_phrase,recent_tweet_count_you_want): | |
| #hashtag_phrase=input("Enter hashtahg") | |
| consumer_key="30GAxNeTfZuPL5SfNhFBodmRF" | |
| consumer_secret="C6O64nP0XjtwaAnXYL9zCcDZKEIP2iL1yVdlsNJtwLiZ5AEEBs" | |
| access_token="1246523558563471360-WrbCqO8phqjIzx393mrfOSKvDFPmey" | |
| access_token_secret="u7B6yX6ZyTa5ph7xkCFnbzyuD9jbuHHJNL0Y4S7mdZb1J" | |
| auth = tweepy.OAuthHandler(consumer_key, consumer_secret) | |
| auth.set_access_token(access_token, access_token_secret) | |
| api = tweepy.API(auth) | |
| fname = '_'.join(re.findall(r"#(\w+)", hashtag_phrase)) | |
| data_frame=pd.DataFrame(columns={"timestamp"}) | |
| timestamp=[] | |
| tweet_text=[] | |
| user_name=[] | |
| user_id=[] | |
| for tweet in tweepy.Cursor(api.search_tweets, q=hashtag_phrase+' -filter:retweets',lang="en", tweet_mode='extended').items(recent_tweet_count_you_want): | |
| timestamp1=tweet.created_at | |
| timestamp.append(timestamp1) | |
| #tweet_text1=tweet.full_text.replace('\n',' ').encode('utf-8') | |
| tweet_text1=tweet.full_text | |
| tweet_text.append(tweet_text1) | |
| user_name1=tweet.user.screen_name.encode('utf-8') | |
| user_name.append(user_name1) | |
| user_id1=tweet.id | |
| user_id.append(user_id1) | |
| data2=pd.DataFrame(timestamp,columns={"timestamp"}) | |
| data1=pd.DataFrame(tweet_text,columns={"tweet_text"}) | |
| data3=pd.DataFrame(user_name,columns={"user_name"}) | |
| data4=pd.concat([data1,data2],axis=1) | |
| data5=pd.concat([data4,data3],axis=1) | |
| data7=pd.DataFrame(user_id,columns={"user_id"}) | |
| data6=pd.concat([data5,data7],axis=1) | |
| tweet_list=data6.tweet_text.to_list() | |
| p = [i for i in classifier(tweet_list)] | |
| q=[p[i]['label'] for i in range(len(p))] | |
| data10=pd.DataFrame(q,columns={"sentiment"}) | |
| data_tweet_final=pd.concat([data6,data10],axis=1) | |
| p_summarize_label = [i for i in summarizer(tweet_list)] | |
| q_summarize=[p_summarize_label[i]['summary_text'] for i in range(len(p_summarize_label))] | |
| data_summarize=pd.DataFrame(q_summarize,columns={"summarized_tweets"}) | |
| data_tweet_summarize_final=pd.concat([data_tweet_final,data_summarize],axis=1) | |
| data_tweet_summarize_final.to_csv("tweet_data2.csv") | |
| #data6.to_csv("tweet_data1.csv") | |
| #data6=data5.head(10) | |
| return data_tweet_summarize_final | |
| iface = gr.Interface( | |
| search_hashtag1,inputs=["text","number"], | |
| outputs="dataframe", | |
| examples=[["#datascience",5],["#valentine's day",10],["#pushpa",15],["#budget",20],["#sharktankindia",30]], | |
| theme="seafoam", | |
| title='Sakil Tweetlib6 App', | |
| description="You can extract tweets based on Hashtag.e.g. Please enter #datascience. The app extracts tweets based on the hashtag and the number of tweet count you want.") | |
| iface.launch(inline=False) |