Bien sûr, voici un script Python amusant pour surveiller les tendances en temps réel sur la fusion nucléaire. Ce script utilise des bibliothèques comme `tweepy` pour accéder à Twitter et `textblob` pour analyser le sentiment des tweets. Assurez-vous d’avoir configuré vos clés d’API Twitter avant d’exécuter ce script.
« `python
import tweepy
from textblob import TextBlob
import time
# Configuration des clés d’API Twitter
consumer_key = ‘votre_consumer_key’
consumer_secret = ‘votre_consumer_secret’
access_token = ‘votre_access_token’
access_token_secret = ‘votre_access_token_secret’
# Authentification avec Tweepy
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
def get_tweets(query, count=100):
tweets = tweepy.Cursor(api.search_tweets, q=query, lang=’en’, tweet_mode=’extended’).items(count)
return tweets
def analyze_sentiment(tweets):
positive_count = 0
negative_count = 0
neutral_count = 0
for tweet in tweets:
analysis = TextBlob(tweet.full_text)
sentiment = analysis.sentiment.polarity
if sentiment > 0:
positive_count += 1
elif sentiment < 0:
negative_count += 1
else:
neutral_count += 1
return positive_count, negative_count, neutral_count
def print_tweets_sentiment(tweets):
positive_count, negative_count, neutral_count = analyze_sentiment(tweets)
print(f"Sur {len(tweets)} tweets sur la fusion nucléaire :")
print(f"- Positifs : {positive_count} ({(positive_count / len(tweets)) * 100:.2f}%)")
print(f"- Négatifs : {negative_count} ({(negative_count / len(tweets)) * 100:.2f}%)")
print(f"- Neutres : {neutral_count} ({(neutral_count / len(tweets)) * 100:.2f}%)")
def main():
query = "nuclear fusion"
while True:
print("\n--- Dernières nouvelles sur la fusion nucléaire ---")
tweets = get_tweets(query)
if tweets:
print_tweets_sentiment(tweets)
else:
print("Pas de tweets trouvés pour cette recherche.")
time.sleep(300) # Vérifie toutes les 5 minutes
if __name__ == "__main__":
main()
```
Explications :
1. **Configuration des clés d'API Twitter** : Remplacez `'votre_consumer_key'`, `'votre_consumer_secret'`, `'votre_access_token'`, et `'votre_access_token_secret'` par vos propres clés d'API Twitter.
2. **Authentification avec Tweepy** : Utilise les clés d'API pour authentifier votre application auprès de Twitter.
3. **Fonction `get_tweets`** : Récupère les tweets correspondant à une requête spécifique (ici, "nuclear fusion").
4. **Fonction `analyze_sentiment`** : Utilise `TextBlob` pour analyser le sentiment de chaque tweet (positif, négatif, neutre).
5. **Fonction `print_tweets_sentiment`** : Affiche le nombre et le pourcentage de tweets positifs, négatifs et neutres.
6. **Boucle principale `main`** : Exécute la recherche de tweets et l'analyse de sentiment toutes les 5 minutes.
Ton Drôle :
Pour ajouter un ton drôle, vous pouvez modifier les messages de sortie. Par exemple :
```python
def print_tweets_sentiment(tweets):
positive_count, negative_count, neutral_count = analyze_sentiment(tweets)
print(f"Sur {len(tweets)} tweets sur la fusion nucléaire :")
print(f"- Positifs : {positive_count} ({(positive_count / len(tweets)) * 100:.2f}%) - On dirait que tout le monde est super enthousiaste à l'idée de faire fondre la Terre !")
print(f"- Négatifs : {negative_count} ({(negative_count / len(tweets)) * 100:.2f}%) - Peut-être que certains préfèrent l'énergie solaire, qui sait ?")
print(f"- Neutres : {neutral_count} ({(neutral_count / len(tweets)) * 100:.2f}%) - Ils sont probablement trop occupés à regarder des vidéos de chatons.")
```
Amusez-vous bien avec ce script !