Funkcja do spłaszczania tweetów
Zazwyczaj pracujemy z setkami lub tysiącami tweetów. Warto zatem zdefiniować funkcję, która spłaszcza plik JSON zawierający tweety. Nazwiemy ją flatten_tweets(). Będziemy korzystać z tej funkcji wielokrotnie w tym kursie, lekko ją modyfikując w zależności od rodzaju danych.
Biblioteka json została już załadowana.
To ćwiczenie jest częścią kursu
Analiza danych z mediów społecznościowych w Pythonie
Instrukcje do ćwiczenia
- Zapisz nazwę ekranową użytkownika w
user-screen_name. - Zapisz tekst rozszerzonego tweeta w
extended_tweet-full_text. - Zapisz nazwę ekranową użytkownika retweetowanego w
retweeted_status-user-screen_name. - Zapisz tekst retweeta w
retweeted_status-text.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
def flatten_tweets(tweets_json):
""" Flattens out tweet dictionaries so relevant JSON
is in a top-level dictionary."""
tweets_list = []
# Iterate through each tweet
for tweet in tweets_json:
tweet_obj = json.loads(tweet)
# Store the user screen name in 'user-screen_name'
tweet_obj[____] = ____
# Check if this is a 140+ character tweet
if 'extended_tweet' in tweet_obj:
# Store the extended tweet text in 'extended_tweet-full_text'
tweet_obj[____] = ____
if 'retweeted_status' in tweet_obj:
# Store the retweet user screen name in 'retweeted_status-user-screen_name'
tweet_obj[____] = ____
# Store the retweet text in 'retweeted_status-text'
tweet_obj[____] = ____
tweets_list.append(tweet_obj)
return tweets_list