Bắt đầu ngayBắt đầu miễn phí

Hàm làm phẳng tweet

Thông thường, bạn sẽ quan tâm đến hàng trăm hoặc hàng nghìn tweet. Vì vậy, hợp lý nhất là định nghĩa một hàm để làm phẳng tệp JSON chứa đầy các tweet. Ta sẽ gọi hàm này là flatten_tweets(). Bạn sẽ dùng hàm này nhiều lần trong khóa học và chỉnh sửa nhẹ tùy theo từng loại dữ liệu.

json đã được nạp sẵn cho bạn.

Bài tập này là một phần của khóa học

Phân tích dữ liệu mạng xã hội bằng Python

Xem khóa học

Hướng dẫn bài tập

  • Lưu tên hiển thị của người dùng vào user-screen_name.
  • Lưu văn bản tweet mở rộng vào extended_tweet-full_text.
  • Lưu tên hiển thị của người dùng trong retweet vào retweeted_status-user-screen_name.
  • Lưu văn bản của retweet vào retweeted_status-text.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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
Chỉnh sửa và Chạy Mã