Cài đặt
Cách dễ nhất để cài đặt phiên bản mới nhất từ PyPI là sử dụng pip
pip install tweepy
Để sử dụng gói phụ tweepy.asynchronous
, hãy nhớ cài đặt gói phụ async
pip install tweepy[async]
Bạn cũng có thể sử dụng Git để sao chép kho lưu trữ từ GitHub để cài đặt phiên bản phát triển mới nhất
git clone //github.com/tweepy/tweepy.git
cd tweepy
pip install .
Ngoài ra, cài đặt trực tiếp từ kho GitHub
pip install git+//github.com/tweepy/tweepy.git
Trăn 3. 7 - 3. 11 được hỗ trợ
liên kết
- Tài liệu
- Máy chủ Discord chính thức
- Tài liệu API Twitter
Trong blog này, chúng tôi tiếp tục khám phá các tính năng tìm kiếm cao cấp của API Twitter bằng cách sử dụng giao diện API từ Tweepy, kiểm tra các giới hạn tốc độ và cách xử lý chúng, đồng thời nhận các xu hướng địa phương trên Twitter
Chúng ta cũng sẽ xem xét giao diện Máy khách do thư viện Tweepy cung cấp cho Twitter API v2 và cách làm việc với nó để lấy các loại dữ liệu khác nhau từ Twitter
Trong blog trước của loạt bài nhỏ này, chúng tôi đã đề cập đến các phương pháp có sẵn với giao diện Twitter API v1 để nhận các loại dữ liệu khác nhau từ Twitter. Chúng tôi cũng đã xem xét các loại cấp độ truy cập cho Twitter API
Sau đây, chúng tôi sẽ đề cập đến các chủ đề
•
•
•
•
tìm kiếm cao cấp
Tìm kiếm cao cấp là API đăng ký do Twitter cung cấp. Có hai sản phẩm có sẵn với API này
- Tìm kiếm Tweets. điểm cuối 30 ngày
- Tìm kiếm Tweets. Điểm cuối lưu trữ đầy đủ
Để bắt đầu sử dụng bất kỳ API đăng ký nào, bạn cần thiết lập môi trường nhà phát triển ⁽¹⁾ cho điểm cuối
Tìm kiếm trong 30 ngày qua
Twitter cung cấp các Tweet tìm kiếm cao cấp. API 30 ngày, cho phép bạn truy cập vào các tweet được đăng trong vòng 30 ngày qua. Bạn có thể tìm kiếm trên cơ sở dữ liệu này trong đó các tweet được khớp với truy vấn của bạn và được trả về
Tính năng này có thể được truy cập bằng phương thức search_30_day[] của lớp API
Tìm kiếm toàn bộ kho lưu trữ
Chúng ta có thể tìm kiếm toàn bộ kho lưu trữ bằng phương thức search_full_archive[]. Chúng tôi có thể chỉ định ngày và giờ mà chúng tôi muốn tìm kiếm kho lưu trữ
Giới hạn tỷ lệ
Twitter là một nguồn dữ liệu lớn vô giá, được hàng triệu nhà phát triển trên toàn thế giới truy cập hàng ngày. Nó áp đặt các giới hạn sử dụng để làm cho API có thể mở rộng và đáng tin cậy. Các giới hạn sử dụng này tùy thuộc vào phương thức xác thực của bạn
Có giới hạn về số lượng yêu cầu được thực hiện trong một khoảng thời gian cụ thể. Chúng được gọi là giới hạn tốc độ ⁽²⁾
Vì vậy, làm thế nào để chúng ta đối phó với những giới hạn này?
Làm thế nào bạn sẽ biết trạng thái của giới hạn tỷ lệ cho bạn?
Và phải làm gì nếu ứng dụng của bạn vi phạm giới hạn tốc độ?
Bạn có muốn nó kết thúc hay nó nên đợi giới hạn được bổ sung?
Hãy cùng khám phá những phương pháp này
Làm cách nào để kiểm tra trạng thái giới hạn tốc độ?
api. Phương thức rate_limit_status[] trả về số lượng yêu cầu API có sẵn cho người dùng trước khi đạt đến giới hạn API cho giờ hiện tại. Nếu bạn cung cấp thông tin đăng nhập cho người dùng, phương thức này sẽ trả về trạng thái giới hạn tốc độ cho người dùng này. Mặt khác, nó trả về trạng thái giới hạn tốc độ cho địa chỉ IP của người yêu cầu
Làm cách nào để đặt Ứng dụng đợi cho đến khi giới hạn tốc độ được bổ sung?
Khi chúng tôi khởi tạo đối tượng lớp API sau khi xác thực, chúng tôi có thể thiết lập nó để nó đợi các giới hạn tốc độ được bổ sung
Nhận xu hướng cho một vị trí
Xu hướng là một tính năng quan trọng của Twitter. Vậy làm cách nào chúng ta có thể biết những địa điểm nào đang cung cấp các chủ đề thịnh hành hiện nay?
Phương thức available_trends[] trả về id WOE [Where On Earth] và thông tin khác mà con người có thể đọc được cho các vị trí mà Twitter có thông tin về xu hướng
Bây giờ chúng ta hãy xem làm thế nào chúng ta có thể nhận được các chủ đề thịnh hành trên Twitter cho một vị trí cụ thể, có thể là một thành phố hoặc một quốc gia. Đối với điều này, chúng tôi cần id WOE của vị trí. Bạn có thể lấy cái này từ đây ⁽³⁾
Sau khi bạn có id WOE của địa điểm, việc nắm bắt các xu hướng địa phương chỉ là một dòng mã
Ứng dụng khách Tweepy cho Twitter API v2
Tweepy cung cấp giao diện API cho Twitter API v1. 1. Đối với API v2, Tweepy cung cấp giao diện Máy khách. Điều này có sẵn từ Tweepy v4. 0 trở đi, vì vậy bạn có thể cần nâng cấp cài đặt Tweepy của mình nếu bạn đã cài đặt nó một thời gian trước
Bạn có thể làm điều này bằng cách chạy lệnh sau
pip install tweepy –upgrade
xác thực ứng dụng khách
Xác thực tương tự như API, ngoại trừ bạn cần mã thông báo mang cho dự án của mình để xác thực ứng dụng khách
Nhận tên người dùng cho một ID người dùng cụ thể bằng ứng dụng khách
Nhận ID người dùng cho một tên người dùng cụ thể bằng ứng dụng khách
Nhận tên người dùng cho nhiều Id người dùng bằng ứng dụng khách
Bây giờ chúng ta hãy lấy thông tin chi tiết cho nhiều id người dùng. Chúng tôi sẽ chỉ tìm nạp một số trường người dùng ⁽⁴⁾
Sử dụng cách tiếp cận tương tự, bạn cũng có thể thử tìm nạp id người dùng cho nhiều người dùng. dùng thử
Nhận Tweets] với [các] Id Tweet bằng ứng dụng khách
Chúng tôi có thể tìm nạp một tweet với id tweet của nó bằng phương thức get_tweet[]
Điều gì xảy ra nếu chúng tôi muốn lấy các tweet cho nhiều id tweet?
Nhận người theo dõi của người dùng bằng ứng dụng khách
Bây giờ bạn có muốn kiểm tra số người theo dõi mà người dùng có không?
Nhận người dùng mà người dùng theo dõi bằng ứng dụng khách
Và người dùng này theo dõi ai?
Nhận Tweet của người dùng bằng ứng dụng khách
Tương tự như cách chúng tôi tìm nạp tweet của người dùng bằng API, chúng tôi có thể tìm nạp tweet của người dùng bằng phương thức get_users_tweets[] của khách hàng. Theo mặc định, chúng tôi sẽ chỉ có các giá trị cho id tweet và văn bản trong phản hồi. Nếu chúng tôi muốn truy cập các trường tweet khác ⁽⁵⁾, chúng tôi sẽ phải chỉ định chúng một cách riêng biệt, như được hiển thị bên dưới
Nhận các Tweet mà người dùng thích bằng ứng dụng khách
Nhận người dùng đã Tweet lại một Tweet bằng ứng dụng khách
Tìm kiếm các Tweet gần đây bằng ứng dụng khách
Phương thức search_recent_tweets[] trả về các tweet từ bảy ngày qua khớp với truy vấn tìm kiếm đã cho. Bạn cũng có thể chỉ định thời gian bắt đầu và kết thúc tìm kiếm
Theo mặc định, kết quả tìm kiếm sẽ ở dạng phản hồi chứa ID tweet và văn bản tweet. Xin lưu ý rằng tham số max_results chỉ có thể có giá trị từ 10 đến 100
Nhận số lượng Tweet cho truy vấn tìm kiếm bằng ứng dụng khách
Gần đây có bao nhiêu tweet bằng tiếng Anh về Elon Musk không phải là tweet lại?
Truy cập liên kết ⁽⁶⁾ này nếu bạn muốn biết thêm về cách tạo truy vấn để tìm kiếm tweet
Phân trang trong ứng dụng khách
Chúng tôi đã đề cập trước đó rằng tham số max_results trong khi tìm kiếm tweet có thể có giá trị tối đa là 100. Vậy chúng ta phải làm gì nếu cần hơn 100 tweet?
Phân trang trong Máy khách tương tự như cách chúng tôi sử dụng Con trỏ cho API. Hãy cho chúng tôi xem một ví dụ về cách chúng tôi có thể tìm nạp 1000 tweet. Chúng tôi đã thực hiện cùng một truy vấn mà chúng tôi đã sử dụng trong phần trước
Bạn muốn một ví dụ khác?
Chúng tôi đã đề cập đến một số phương pháp quan trọng để lấy dữ liệu từ Twitter. Còn nhiều điều nữa để khám phá. Nếu bạn muốn đọc về tất cả các phương pháp hiện có, vui lòng đọc tài liệu chính thức của Khách hàng ⁽⁷⁾
Các phương thức cho Máy khách trả về một đối tượng Phản hồi với kết quả. Trong các phần tiếp theo, chúng tôi sẽ xem xét cách chúng tôi có thể lưu kết quả tìm kiếm vào các định dạng dữ liệu khác nhau để phân tích
Sử dụng phần mở rộng để lấy thông tin người dùng và phương tiện
API Twitter cung cấp các bản mở rộng ⁽⁸⁾ như một phương tiện để mở rộng tải trọng mà chúng tôi nhận được từ tìm kiếm người dùng hoặc tra cứu tweet. Phần mở rộng giúp bao gồm dữ liệu bổ sung trong cùng một phản hồi mà không cần các truy vấn riêng biệt
Chúng tôi có thể mở rộng trên các tệp đính kèm. media_keys để xem đối tượng media, author_id để xem đối tượng người dùng và referenced_tweets. id để xem đối tượng Tweet mà Tweet được yêu cầu ban đầu đang tham chiếu. Các đối tượng mở rộng được lồng trong đối tượng bao gồm
Chúng ta hãy xem một ví dụ để lấy thông tin người dùng và phương tiện bằng cách sử dụng tính năng mở rộng
Viết kết quả tìm kiếm vào một tệp văn bản
Bây giờ chúng ta hãy lưu kết quả tìm kiếm của một truy vấn vào một tệp văn bản
Đưa kết quả tìm kiếm vào DataFrame
Pandas DataFrames rất tuyệt vời để làm việc với một lượng lớn dữ liệu. Vì vậy, hãy để chúng tôi lưu kết quả tìm kiếm của mình dưới dạng Khung dữ liệu Pandas. Nếu bạn muốn lưu dữ liệu này trong tệp csv, bạn có thể sử dụng phương thức Pandas to_csv[]
API Twitter v2 GitHub
Chúng tôi đã cố gắng đề cập đến hầu hết các trường hợp sử dụng phổ biến để lấy dữ liệu Twitter. Nếu bạn muốn khám phá thêm Twitter API v2, thì kho lưu trữ Twitter Developer Platform Resources ⁽⁹⁾ này là một nơi tuyệt vời để bắt đầu. Kho lưu trữ này có nhiều mã mẫu ⁽¹⁰⁾ cho chức năng linh hoạt do Twitter API v2 cung cấp
Phần kết luận
Trong loạt blog gồm hai phần này, chúng tôi đã khám phá cách chúng tôi có thể lấy dữ liệu từ Twitter bằng giao diện API và Ứng dụng khách của thư viện Tweepy. Chúng tôi cũng đã xem xét API Twitter và các chức năng của chúng
Bây giờ chúng tôi đã tổ chức dữ liệu độc đáo trong Pandas DataFrames, chúng tôi có thể thực hiện xử lý ngôn ngữ tự nhiên trên đó. Muốn tìm hiểu thêm?
Cho đến lúc đó, mã hóa hạnh phúc
từ chối trách nhiệm. Tất cả các khoản đầu tư và giao dịch trên thị trường chứng khoán đều có rủi ro. Mọi quyết định đặt giao dịch trên thị trường tài chính, bao gồm giao dịch cổ phiếu hoặc quyền chọn hoặc các công cụ tài chính khác là quyết định cá nhân chỉ nên được đưa ra sau khi nghiên cứu kỹ lưỡng, bao gồm đánh giá rủi ro cá nhân và tài chính cũng như sự tham gia của hỗ trợ chuyên nghiệp trong phạm vi bạn . Các chiến lược giao dịch hoặc thông tin liên quan được đề cập trong bài viết này chỉ dành cho mục đích thông tin