Cách thu thập dữ liệu Twitter bằng Python - Phương pháp dễ dàng vào năm 2025

Cách thực hiện , Python ,21-12-20225 phút đọc

Không nhiều trang web có thể liên hệ khi từ “dữ liệu lớn” được đề cập. Nhưng Twitter có thể vì hơn 500 triệu tweet được trao đổi trên nền tảng của nó hàng ngày, bao gồm một tỷ lệ lớn hình ảnh, văn bản và video. Một tweet duy nhất có thể cung cấp cho bạn thông tin về: Không giống như nhiều nền tảng truyền thông xã hội khác, Twitter có một nền tảng rất thân thiện, đắt tiền

Không nhiều trang web có thể liên hệ khi từ “dữ liệu lớn” được đề cập. Nhưng Twitter có thể vì có hơn 500 triệu tweet được trao đổi trên nền tảng của nó hàng ngày, bao gồm một tỷ lệ lớn hình ảnh, văn bản và video. Một tweet duy nhất có thể cung cấp cho bạn thông tin về:

  • Số người đã xem tweet
  • Nhân khẩu học của những người thích hoặc chia sẻ lại tweet
  • Tổng số lần nhấp vào hồ sơ của bạn

Không giống như nhiều nền tảng truyền thông xã hội khác, Twitter có một API công khai rất thân thiện, đắt tiền và miễn phí có thể được sử dụng để truy cập dữ liệu trên nền tảng của mình. Nó cũng cung cấp một API phát trực tuyến để truy cập dữ liệu Twitter trực tiếp. Tuy nhiên, các API có một số giới hạn về số lượng yêu cầu mà bạn có thể gửi trong một khoảng thời gian cửa sổ. Nhu cầu về Twitter Scraping xuất hiện khi bạn không thể truy cập dữ liệu mong muốn thông qua API. Scraping tự động hóa quy trình thu thập dữ liệu từ Twitter để bạn có thể sử dụng trong bảng tính, báo cáo, ứng dụng và cơ sở dữ liệu. 

Trước khi tìm hiểu mã python để thu thập dữ liệu Twitter, hãy cùng xem tại sao chúng ta cần thu thập dữ liệu Twitter.

Bạn có thể thoải mái chuyển đến bất kỳ phần nào để tìm hiểu cách thu thập dữ liệu Twitter bằng python!

Mục lục

Tại sao bạn cần phải thu thập dữ liệu trên Twitter?

Bạn biết rằng Twitter là một trang web vi blog và là không gian lý tưởng lưu trữ thông tin phong phú mà bạn có thể thu thập. Nhưng bạn có biết tại sao bạn cần thu thập thông tin này không?

Dưới đây là một số lý do để thu thập dữ liệu Twitter nhằm giúp ích cho các nhà nghiên cứu:

  • Hiểu về mạng lưới Twitter của bạn và ảnh hưởng của các tweet của bạn
  • Biết ai được nhắc đến thông qua @usernames
  • Kiểm tra cách thông tin lan truyền
  • Khám phá cách các xu hướng phát triển và thay đổi theo thời gian
  • Kiểm tra mạng lưới và cộng đồng
  • Biết được mức độ phổ biến/ảnh hưởng của các tweet và mọi người
  • Thu thập dữ liệu về người dùng Twitter có thể bao gồm: Bạn bèNgười theo dõiYêu thíchẢnh đại diệnNgày đăng ký, v.v.
  • Bạn
  • Người theo dõi
  • Yêu thích
  • Ảnh đại diện
  • Ngày đăng ký, v.v.

Tương tự như vậy, việc thu thập dữ liệu trên Twitter có thể giúp các nhà tiếp thị:

  • Giám sát hiệu quả đối thủ cạnh tranh của họ
  • Nhắm mục tiêu đối tượng tiếp thị bằng các tweet có liên quan
  • Thực hiện phân tích tình cảm
  • Theo dõi các thương hiệu thị trường
  • Kết nối với những người có sức ảnh hưởng lớn trên thị trường
  • Nghiên cứu hành vi khách hàng

Cách thu thập dữ liệu Twitter bằng Python

Có nhiều công cụ có sẵn để thu thập dữ liệu Twitter theo định dạng có cấu trúc. Một số trong số chúng là:

  • Beautiful Soup – Đây là một gói Python phân tích cú pháp các tài liệu HTML và XML và rất hữu ích để thu thập dữ liệu từ Twitter.
  • Twitter API là một trình bao bọc Python thực hiện các yêu cầu API như tải xuống tweet, tìm kiếm người dùng và nhiều hơn nữa. Bạn có thể tạo một ứng dụng Twitter để lấy khóa OAuth và truy cập Twitter API.
  • Twitter Scraper – Bạn có thể sử dụng Twitter Scraper để thu thập dữ liệu Twitter bằng từ khóa hoặc các thông số kỹ thuật khác. 

Hãy cùng xem cách thu thập các tweet về một chủ đề cụ thể bằng thư viện twitterscraper của Python.

Cài đặt twitterscraper

Bạn có thể cài đặt thư viện twitterscraper bằng lệnh sau:

!pip cài đặt twitterscraper

Bạn có thể sử dụng lệnh bên dưới để cài đặt phiên bản mới nhất.

!pip cài đặt twitterscraper ==1.6.1

HOẶC

!pip cài đặt twitterscraper --nâng cấp

Nhập thư viện

Bạn sẽ nhập ba thứ, cụ thể là:

lấy_tweetspandas

từ twitter_scraper nhập get_tweets nhập pandas dưới dạng pd

Đề cập đến thông số kỹ thuật

Giả sử chúng ta muốn thu thập danh sách các hashtag sau:

  • Học máy
  • Học sâu
  • NGÔN NGỮ LẬP TRÌNH NGÔN NGỮ
  • Tầm nhìn máy tính
  • TRÍ TUỆ NHÂN TẠO
  • TensorFlow là gì?
  • Pytorch
  • Khoa học dữ liệu 
  • Phân tích dữ liệu, v.v.
từ khóa = [ 'machinelearning' , 'ML' , 'deeplearning' , '#artificialintelligence' , '#NLP' , 'computervision' , 'AI' , 'tensorflow' , 'pytorch' , "sklearn" , "pandas" , "plotly" , "spacy" , "fastai" , 'datascience' , 'dataanalysis' ]

.

Tạo DataFrame

Chúng tôi chạy một lần lặp để hiểu cách triển khai thư viện get_tweets. Chúng tôi truyền đối số hoặc chủ đề đầu tiên của mình dưới dạng hashtag mà chúng tôi muốn thu thập tweet. 

tweet = get_tweets( "#machinelearning" , trang = 5 )

Ở đây tweet là một đối tượng. Chúng ta phải tạo một Pandas DataFrame bằng cách sử dụng mã bên dưới:

tweets_df = pd.DataFrame()

In các phím

Chúng tôi sử dụng hàm bên dưới để in các khóa và giá trị thu được.

đối với tweet trong tweet: print ( 'Keys:' , list (tweet. keys ()), '\n' ) break

Các phím được hiển thị như sau:

Trích xuất dữ liệu có liên quan

Bây giờ, chúng ta chạy mã cho một từ khóa và trích xuất dữ liệu có liên quan. Giả sử chúng ta muốn trích xuất dữ liệu sau:

  • chữ
  • làRetweet
  • trả lời
  • retweet
  • thích

Chúng ta có thể sử dụng vòng lặp for để trích xuất dữ liệu này, sau đó sử dụng hàm head() để lấy năm hàng đầu tiên của dữ liệu.

for tweet in tweets:
  _ = pd.DataFrame({'text' : [tweet['text']],
                    'isRetweet' : tweet['isRetweet'],
                    'replies' : tweet['replies'],
                    'retweets' : tweet['retweets'],
                    'likes' : tweet['likes']
                    })
  tweets_df = tweets_df.append(_, ignore_index = True)
tweets_df.head()

Đây là khung dữ liệu chứa dữ liệu mong muốn của chúng tôi và bạn có thể dễ dàng hình dung tất cả các tweet đã thu thập được. 

Xin chúc mừng vì đã xóa tweet khỏi Twitter. Bây giờ, chúng ta sẽ tìm hiểu nhu cầu về proxy Twitter.

Tại sao nên sử dụng Proxy Twitter?

Bạn đã bao giờ đăng thứ gì đó mà bạn không nên đăng chưa? Proxy Twitter là giải pháp tốt nhất cho những người dùng không đủ khả năng để hàng loạt người theo dõi của mình không có nội dung mới trong một thời gian dài. Nếu không có chúng, bạn sẽ không may mắn và có thể mất người theo dõi do thiếu hoạt động. Các proxy này hoạt động thay mặt cho máy tính của bạn và ẩn địa chỉ IP của bạn khỏi máy chủ Twitter. Vì vậy, bạn có thể truy cập nền tảng mà không bị chặn tài khoản.

Bạn cũng cần một proxy phù hợp khi sử dụng công cụ thu thập dữ liệu để thu thập dữ liệu Twitter. Ví dụ, các nhà tiếp thị trên toàn thế giới sử dụng proxy tự động hóa Twitter với các công cụ thu thập dữ liệu để thu thập thông tin thị trường có giá trị trên Twitter chỉ trong một phần nhỏ thời gian.

Proxy dân dụng – Bạn có thể sử dụng proxy dân dụng nhanh, an toàn, đáng tin cậy và tiết kiệm chi phí. Chúng tạo nên trải nghiệm chất lượng cao đặc biệt vì chúng là IP của Nhà cung cấp dịch vụ Internet an toàn và hợp pháp.

Công cụ tự động hóa – Bạn cũng có thể sử dụng công cụ tự động hóa khi sử dụng proxy Twitter. Các công cụ này giúp quản lý nhiều tài khoản vì chúng có thể xử lý nhiều tác vụ cùng lúc.

Ví dụ, TwitterAttackPro là một công cụ tuyệt vời có thể xử lý hầu hết mọi tác vụ trên Twitter thay bạn, bao gồm:

  • Đang theo dõi/bỏ theo dõi
  • Tweet/Retweet
  • Trả lời bình luận
  • Yêu thích

Để sử dụng các công cụ tự động hóa này, bạn phải sử dụng proxy Twitter. Nếu không, Twitter sẽ cấm tất cả tài khoản của bạn.

Proxy nào là tốt nhất để thu thập dữ liệu Twitter bằng Python?

ProxyScrape là một trong những nhà cung cấp proxy trực tuyến phổ biến và đáng tin cậy nhất. Ba dịch vụ proxy bao gồm máy chủ proxy trung tâm dữ liệu chuyên dụng, máy chủ proxy dân dụng và máy chủ proxy cao cấp. Vậy, proxy nào là tốt nhất để thu thập dữ liệu Twitter bằng python? Trước khi trả lời câu hỏi đó, tốt nhất là bạn nên xem các tính năng của từng máy chủ proxy.

Proxy trung tâm dữ liệu chuyên dụng phù hợp nhất cho các tác vụ trực tuyến tốc độ cao, chẳng hạn như truyền phát lượng dữ liệu lớn (về kích thước) từ nhiều máy chủ khác nhau cho mục đích phân tích. Đây là một trong những lý do chính khiến các tổ chức chọn proxy chuyên dụng để truyền lượng dữ liệu lớn trong thời gian ngắn.

Proxy trung tâm dữ liệu chuyên dụng có một số tính năng, chẳng hạn như băng thông không giới hạn và kết nối đồng thời, proxy HTTP chuyên dụng để giao tiếp dễ dàng và xác thực IP để bảo mật hơn. Với thời gian hoạt động 99,9%, bạn có thể yên tâm rằng trung tâm dữ liệu chuyên dụng sẽ luôn hoạt động trong bất kỳ phiên nào. Cuối cùng nhưng không kém phần quan trọng, ProxyScrape cung cấp dịch vụ chăm sóc khách hàng tuyệt vời và sẽ giúp bạn giải quyết vấn đề trong vòng 24-48 giờ làm việc. 

Tiếp theo là proxy dân dụng. Proxy dân dụng là proxy dành cho mọi người dùng nói chung. Lý do chính là địa chỉ IP của proxy dân dụng giống với địa chỉ IP do ISP cung cấp. Điều này có nghĩa là việc xin phép máy chủ mục tiêu để truy cập dữ liệu của nó sẽ dễ dàng hơn bình thường. 

Tính năng khác của ProxyScrape Proxy dân dụng là một tính năng luân phiên. Proxy luân phiên giúp bạn tránh bị cấm vĩnh viễn tài khoản vì proxy dân dụng của bạn thay đổi địa chỉ IP của bạn một cách động, khiến máy chủ đích khó kiểm tra xem bạn có đang sử dụng proxy hay không. 

Ngoài ra, các tính năng khác của proxy dân dụng là: băng thông không giới hạn, cùng với kết nối đồng thời, proxy HTTP/s chuyên dụng, proxy tại bất kỳ phiên nào vì có hơn 7 triệu proxy trong nhóm proxy, xác thực tên người dùng và mật khẩu để bảo mật hơn và cuối cùng nhưng không kém phần quan trọng, khả năng thay đổi máy chủ quốc gia. Bạn có thể chọn máy chủ mong muốn bằng cách thêm mã quốc gia vào xác thực tên người dùng. 

Cuối cùng là proxy cao cấp. Proxy cao cấp giống như proxy trung tâm dữ liệu chuyên dụng. Chức năng vẫn như cũ. Sự khác biệt chính là khả năng truy cập. Trong proxy cao cấp, danh sách proxy (danh sách chứa proxy) được cung cấp cho mọi người dùng trên ProxyScrape mạng. Đó là lý do tại sao proxy cao cấp có giá thấp hơn proxy trung tâm dữ liệu chuyên dụng.

Vậy, proxy nào là tốt nhất để thu thập dữ liệu Twitter bằng python? Câu trả lời sẽ là “ proxy dân dụng ”. Lý do rất đơn giản. Như đã nói ở trên, proxy dân dụng là proxy luân phiên, nghĩa là địa chỉ IP của bạn sẽ được thay đổi động trong một khoảng thời gian, điều này có thể hữu ích để đánh lừa máy chủ bằng cách gửi nhiều yêu cầu trong một khung thời gian nhỏ mà không bị chặn IP. 

Tiếp theo, điều tốt nhất là thay đổi máy chủ proxy dựa trên quốc gia. Bạn chỉ cần thêm ISO_CODE quốc gia vào cuối xác thực IP hoặc xác thực tên người dùng và mật khẩu. 

Câu hỏi thường gặp:

1. Làm thế nào để lấy dữ liệu từ Twitter bằng python?
Bạn có thể thu thập dữ liệu Twitter bằng Python với sự trợ giúp của thư viện Python có tên là “twitterscraper”. Thư viện này dễ sử dụng hơn nhiều so với các thư viện thu thập dữ liệu khác. Với thư viện này, bạn có thể thu thập dữ liệu như retweet, trả lời, bình luận và nhiều dữ liệu khác nhanh hơn nhiều.
2. Có hợp pháp khi thu thập dữ liệu trên Twitter không?
Tùy thuộc. Bạn có thể thu thập dữ liệu công khai từ Twitter mà không gặp vấn đề gì. Nhưng Twitter có thể chặn bạn nếu bạn gửi số lượng yêu cầu bất thường trong thời gian ngắn. Tốt hơn là sử dụng proxy để ẩn địa chỉ IP của bạn.
3. Proxy nào là tốt nhất để lấy dữ liệu Twitter bằng python?
Proxy dân dụng là proxy tốt nhất để thu thập dữ liệu Twitter bằng python. Lý do rất đơn giản. Proxy dân dụng là proxy luân phiên, nghĩa là địa chỉ IP của bạn sẽ được thay đổi động trong một khoảng thời gian, điều này có thể hữu ích để đánh lừa máy chủ bằng cách gửi nhiều yêu cầu trong một khung thời gian nhỏ mà không bị chặn IP.

Phần kết luận

Chúng tôi đã thảo luận rằng bạn có thể thu thập dữ liệu Twitter bằng cách sử dụng API và trình thu thập dữ liệu Twitter. Bạn có thể sử dụng trình thu thập dữ liệu Twitter để thu thập dữ liệu Twitter bằng cách đề cập đến các từ khóa và các thông số kỹ thuật khác, giống như chúng tôi đã làm ở trên. Các nhà tiếp thị truyền thông xã hội muốn có nhiều hơn một tài khoản Twitter để tiếp cận rộng hơn phải sử dụng proxy Twitter để ngăn chặn việc cấm tài khoản. Các proxy tốt nhất là proxy dân dụng, cực nhanh và không bao giờ bị chặn. 

Tôi hy vọng bạn đã hiểu được cách lấy dữ liệu từ Twitter bằng Python.