Trong bài học này, bạn sẽ khám phá việc phân tích dữ liệu truyền thông xã hội được truy cập từ Twitter bằng Python. Bạn sẽ sử dụng Twitter RESTful API để truy cập dữ liệu về cả người dùng Twitter và nội dung họ đang tweet
Bắt đầu
Để bắt đầu, bạn cần làm những việc sau
- Thiết lập tài khoản Twitter nếu bạn chưa có tài khoản
- Sử dụng tài khoản Twitter của mình, bạn sẽ cần đăng ký Quyền truy cập của nhà phát triển, sau đó tạo một ứng dụng sẽ tạo thông tin đăng nhập API mà bạn sẽ sử dụng để truy cập Twitter từ
1auth = tw.OAuthHandler[consumer_key, consumer_secret] auth.set_access_token[access_token, access_token_secret] api = tw.API[auth, wait_on_rate_limit=True]
- Nhập gói
7auth = tw.OAuthHandler[consumer_key, consumer_secret] auth.set_access_token[access_token, access_token_secret] api = tw.API[auth, wait_on_rate_limit=True]
Khi bạn đã hoàn thành những điều này, bạn đã sẵn sàng bắt đầu truy vấn API của Twitter để xem bạn có thể tìm hiểu điều gì về các tweet
Thiết lập ứng dụng Twitter
Sau khi bạn đã đăng ký Quyền truy cập của nhà phát triển, bạn có thể tạo một ứng dụng trong Twitter mà bạn có thể sử dụng để truy cập các tweet. Đảm bảo bạn đã có tài khoản Twitter
Để tạo ứng dụng của mình, bạn có thể làm theo hướng dẫn hữu ích từ
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
8, bao gồm phần Tạo ứng dụng không dành riêng cho RHƯỚNG DẪN. Cách thiết lập ứng dụng Twitter bằng tài khoản Twitter của bạn
GHI CHÚ. bạn sẽ cần cung cấp số điện thoại có thể nhận tin nhắn văn bản [e. g. số điện thoại di động hoặc Google] lên Twitter để xác minh việc bạn sử dụng API
Truy cập API Twitter bằng Python
Khi bạn đã thiết lập ứng dụng Twitter của mình, bạn đã sẵn sàng truy cập các tweet trong
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
1. Bắt đầu bằng cách nhập các thư viện auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
1 cần thiếtimport os
import tweepy as tw
import pandas as pd
Để truy cập API Twitter, bạn sẽ cần 4 thứ từ trang Ứng dụng Twitter của mình. Các phím này nằm trong cài đặt ứng dụng Twitter của bạn trong tab
# Post a tweet from Python
api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"]
# Your tweet has been posted!
1- khóa tiêu dùng
- khóa bí mật của người tiêu dùng
- mã thông báo truy cập
- mã thông báo truy cập khóa bí mật
Không chia sẻ những giá trị này với bất kỳ ai khác vì những giá trị này dành riêng cho ứng dụng của bạn
Trước tiên, bạn sẽ cần xác định các khóa của mình
consumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
Gửi một Tweet
Bạn có thể gửi tweet bằng quyền truy cập API của mình. Lưu ý rằng tweet của bạn cần có 280 ký tự trở xuống
# Post a tweet from Python
api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"]
# Your tweet has been posted!
Tìm kiếm Twitter cho Tweets
Bây giờ bạn đã sẵn sàng tìm kiếm Twitter cho các tweet gần đây. Bắt đầu bằng cách tìm các tweet gần đây sử dụng thẻ bắt đầu bằng #
# Post a tweet from Python
api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"]
# Your tweet has been posted!
2. Bạn sẽ sử dụng phương thức # Post a tweet from Python
api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"]
# Your tweet has been posted!
3 để lấy một đối tượng chứa các tweet có chứa thẻ bắt đầu bằng # # Post a tweet from Python
api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"]
# Your tweet has been posted!
2Để tạo truy vấn này, bạn sẽ xác định
- Cụm từ tìm kiếm - trong trường hợp này là
2# Post a tweet from Python api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"] # Your tweet has been posted!
- ngày bắt đầu tìm kiếm của bạn
Hãy nhớ rằng API Twitter chỉ cho phép bạn truy cập các tweet trong vài tuần qua, vì vậy bạn không thể tìm hiểu quá sâu về lịch sử
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
4Bên dưới, bạn sử dụng
# Post a tweet from Python
api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"]
# Your tweet has been posted!
6 để tìm kiếm trên twitter các tweet có chứa cụm từ tìm kiếm #wildfires. Bạn có thể hạn chế số lượng tweet được trả về bằng cách chỉ định một số trong phương thức # Post a tweet from Python
api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"]
# Your tweet has been posted!
7. # Post a tweet from Python
api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"]
# Your tweet has been posted!
8 sẽ trả lại 5 tweet gần đây nhấtauth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
8auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
9# Post a tweet from Python
api.update_status["Look, I'm tweeting from #Python in my #earthanalytics class! @EarthLabCU"]
# Your tweet has been posted!
6 trả về một đối tượng mà bạn có thể lặp lại hoặc lặp lại để truy cập dữ liệu đã thu thập. Mỗi mục trong trình vòng lặp có nhiều thuộc tính khác nhau mà bạn có thể truy cập để nhận thông tin về từng tweet bao gồm- văn bản của tweet
- ai đã gửi tweet
- ngày tweet được gửi
và hơn thế nữa. Đoạn mã bên dưới lặp qua đối tượng và in văn bản được liên kết với mỗi tweet
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
1auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
2Cách tiếp cận trên sử dụng vòng lặp for tiêu chuẩn. Tuy nhiên, đây là một nơi tuyệt vời để sử dụng khả năng hiểu danh sách Python. Khả năng hiểu danh sách cung cấp một cách hiệu quả để thu thập các phần tử đối tượng có trong trình vòng lặp dưới dạng danh sách
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
3consumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
0Để giữ hoặc xóa tin nhắn lại
Tweet lại là khi ai đó chia sẻ tweet của người khác. Nó tương tự như chia sẻ trong Facebook. Đôi khi, bạn có thể muốn xóa các tin nhắn lại vì chúng chứa nội dung trùng lặp có thể làm sai lệch phân tích của bạn nếu bạn chỉ nhìn vào tần suất từ. Những lần khác, bạn có thể muốn giữ tin nhắn lại
Bên dưới, bạn bỏ qua tất cả các tin nhắn lại bằng cách thêm
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
40 vào truy vấn của bạn. Tài liệu API Twitter có thông tin về các cách khác để tùy chỉnh truy vấn của bạnconsumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
1consumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
2consumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
3consumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
4Ai đang Tweet về Cháy rừng?
Bạn có thể truy cập vô số thông tin được liên kết với mỗi tweet. Dưới đây là một ví dụ về việc truy cập những người dùng đang gửi các tweet liên quan đến #wildfires và vị trí của họ. Lưu ý rằng vị trí của người dùng được người dùng nhập thủ công vào Twitter. Do đó, bạn sẽ thấy rất nhiều biến thể trong định dạng của giá trị này
41 cung cấp cách xử lý twitter của người dùng được liên kết với mỗi tweetauth = tw.OAuthHandler[consumer_key, consumer_secret] auth.set_access_token[access_token, access_token_secret] api = tw.API[auth, wait_on_rate_limit=True]
42 cung cấp vị trí do người dùng cung cấpauth = tw.OAuthHandler[consumer_key, consumer_secret] auth.set_access_token[access_token, access_token_secret] api = tw.API[auth, wait_on_rate_limit=True]
Bạn có thể thử nghiệm với các mục khác có sẵn trong mỗi tweet bằng cách nhập
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
43 và sử dụng nút tab để xem tất cả các thuộc tính có sẵn được lưu trữconsumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
5consumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
6Tạo một auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
0 từ danh sách dữ liệu Tweet
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
Khi bạn có một danh sách các mục mà bạn muốn làm việc, bạn có thể tạo một khung dữ liệu pandas chứa dữ liệu đó
consumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
7userlocation0J___D___BUnited States1KelliAgodonS E A T T L E ☮ 🏳️🌈2jpmckinnieLos Angeles, CA3jxnovaHarlem, USA4momtifaPortland, Oregon, USA
Tùy chỉnh truy vấn Twitter
Như đã đề cập ở trên, bạn có thể tùy chỉnh các truy vấn tìm kiếm Twitter của mình bằng cách làm theo tài liệu Twitter API
Chẳng hạn, nếu bạn tìm kiếm
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
45, Twitter sẽ trả về tất cả các tweet chứa cả hai từ đó [liên tiếp] trong mỗi tweetLưu ý rằng mã bên dưới tạo một danh sách có thể được truy vấn bằng cách sử dụng lập chỉ mục Python để trả về năm tweet đầu tiên
consumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
8consumer_key= 'yourkeyhere'
consumer_secret= 'yourkeyhere'
access_token= 'yourkeyhere'
access_token_secret= 'yourkeyhere'
9Trong bài học tiếp theo, bạn sẽ khám phá cách tính tần suất từ được liên kết với các tweet bằng cách sử dụng
auth = tw.OAuthHandler[consumer_key, consumer_secret]
auth.set_access_token[access_token, access_token_secret]
api = tw.API[auth, wait_on_rate_limit=True]
1