· 5 years ago · Dec 17, 2020, 03:20 PM
1import os
2import tweepy as tw
3import pandas as pd
4import datetime
5
6consumer_key= 'key'
7consumer_secret= 'key'
8access_token= 'key'
9access_token_secret= 'key'
10
11auth = tw.OAuthHandler(consumer_key, consumer_secret)
12auth.set_access_token(access_token, access_token_secret)
13api = tw.API(auth, wait_on_rate_limit=True)
14
15now = datetime.datetime.now()
16api.update_status("Salut à tout le monde ! Il est " + now.strftime("%H:%M:%S") + " et nous sommes le " + now.strftime("%m/%d/%Y"))
17
18search_words = "Macron" + " -filter:retweets"
19date_since = "2020-12-17"
20
21tweets = tw.Cursor(api.search,
22 q=search_words,
23 lang="fr",
24 since=datetime.datetime.now().date(), tweet_mode='extended').items(500)
25tweet_info = [[tweet.user.screen_name, tweet.user.location, tweet.full_text, tweet.created_at, tweet.source, search_words] for tweet in tweets]
26
27tweet_text = pd.DataFrame(data=tweet_info,
28 columns=['name', "location", "text", "date", "source", "sujet"])
29tweet_text.head()
30
31tweet_text.to_csv("tweets.csv", encoding="utf-8")
32
33from wordcloud import WordCloud, STOPWORDS
34import matplotlib.pyplot as plt
35from spacy.lang.fr.stop_words import STOP_WORDS as fr_stop
36from spacy.lang.en.stop_words import STOP_WORDS as en_stop
37import nltk
38from nltk.corpus import stopwords
39nltk.download("stopwords")
40final_stopwords_list = list(fr_stop) + list(en_stop) + stopwords.words('french') + stopwords.words('english') + ["co", "macron", "https", "c'est"]
41text = tweet_text['text'].values
42
43wordcloud = WordCloud(width = 1280, height = 720, background_color ='white', stopwords = final_stopwords_list).generate(str(text).lower())
44
45plt.figure(figsize = (20, 20), facecolor = None)
46plt.imshow(wordcloud)
47plt.axis("off")
48plt.show()