Class: XTwitterScraper::Resources::X
- Inherits:
-
Object
- Object
- XTwitterScraper::Resources::X
- Defined in:
- lib/x_twitter_scraper/resources/x.rb,
lib/x_twitter_scraper/resources/x/dm.rb,
lib/x_twitter_scraper/resources/x/lists.rb,
lib/x_twitter_scraper/resources/x/media.rb,
lib/x_twitter_scraper/resources/x/users.rb,
lib/x_twitter_scraper/resources/x/tweets.rb,
lib/x_twitter_scraper/resources/x/profile.rb,
lib/x_twitter_scraper/resources/x/accounts.rb,
lib/x_twitter_scraper/resources/x/bookmarks.rb,
lib/x_twitter_scraper/resources/x/followers.rb,
lib/x_twitter_scraper/resources/x/communities.rb,
lib/x_twitter_scraper/resources/x/tweets/like.rb,
lib/x_twitter_scraper/resources/x/users/follow.rb,
lib/x_twitter_scraper/resources/x/tweets/retweet.rb,
lib/x_twitter_scraper/resources/x/communities/join.rb,
lib/x_twitter_scraper/resources/x/communities/tweets.rb
Overview
X data lookups (subscription required)
Defined Under Namespace
Classes: Accounts, Bookmarks, Communities, Dm, Followers, Lists, Media, Profile, Tweets, Users
Instance Attribute Summary collapse
-
#accounts ⇒ XTwitterScraper::Resources::X::Accounts
readonly
Connected X account management.
-
#bookmarks ⇒ XTwitterScraper::Resources::X::Bookmarks
readonly
X data lookups (subscription required).
- #communities ⇒ XTwitterScraper::Resources::X::Communities readonly
- #dm ⇒ XTwitterScraper::Resources::X::Dm readonly
-
#followers ⇒ XTwitterScraper::Resources::X::Followers
readonly
X data lookups (subscription required).
-
#lists ⇒ XTwitterScraper::Resources::X::Lists
readonly
X data lookups (subscription required).
-
#media ⇒ XTwitterScraper::Resources::X::Media
readonly
Media upload & download.
-
#profile ⇒ XTwitterScraper::Resources::X::Profile
readonly
X write actions (tweets, likes, follows, DMs).
- #tweets ⇒ XTwitterScraper::Resources::X::Tweets readonly
-
#users ⇒ XTwitterScraper::Resources::X::Users
readonly
X data lookups (subscription required).
Instance Method Summary collapse
-
#get_article(tweet_id, request_options: {}) ⇒ XTwitterScraper::Models::XGetArticleResponse
Retrieve the full content of an X Article (long-form post) by tweet ID.
-
#get_home_timeline(cursor: nil, seen_tweet_ids: nil, request_options: {}) ⇒ XTwitterScraper::Models::PaginatedTweets
Get home timeline.
-
#get_notifications(cursor: nil, type: nil, request_options: {}) ⇒ XTwitterScraper::Models::XGetNotificationsResponse
Get notifications.
-
#get_trends(request_options: {}) ⇒ XTwitterScraper::Models::XGetTrendsResponse
Get trending topics.
-
#initialize(client:) ⇒ X
constructor
private
A new instance of X.
Constructor Details
#initialize(client:) ⇒ X
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of X.
135 136 137 138 139 140 141 142 143 144 145 146 147 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 135 def initialize(client:) @client = client @tweets = XTwitterScraper::Resources::X::Tweets.new(client: client) @users = XTwitterScraper::Resources::X::Users.new(client: client) @followers = XTwitterScraper::Resources::X::Followers.new(client: client) @dm = XTwitterScraper::Resources::X::Dm.new(client: client) @media = XTwitterScraper::Resources::X::Media.new(client: client) @profile = XTwitterScraper::Resources::X::Profile.new(client: client) @communities = XTwitterScraper::Resources::X::Communities.new(client: client) @accounts = XTwitterScraper::Resources::X::Accounts.new(client: client) @bookmarks = XTwitterScraper::Resources::X::Bookmarks.new(client: client) @lists = XTwitterScraper::Resources::X::Lists.new(client: client) end |
Instance Attribute Details
#accounts ⇒ XTwitterScraper::Resources::X::Accounts (readonly)
Connected X account management
34 35 36 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 34 def accounts @accounts end |
#bookmarks ⇒ XTwitterScraper::Resources::X::Bookmarks (readonly)
X data lookups (subscription required)
38 39 40 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 38 def bookmarks @bookmarks end |
#communities ⇒ XTwitterScraper::Resources::X::Communities (readonly)
30 31 32 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 30 def communities @communities end |
#dm ⇒ XTwitterScraper::Resources::X::Dm (readonly)
19 20 21 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 19 def dm @dm end |
#followers ⇒ XTwitterScraper::Resources::X::Followers (readonly)
X data lookups (subscription required)
16 17 18 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 16 def followers @followers end |
#lists ⇒ XTwitterScraper::Resources::X::Lists (readonly)
X data lookups (subscription required)
42 43 44 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 42 def lists @lists end |
#media ⇒ XTwitterScraper::Resources::X::Media (readonly)
Media upload & download
23 24 25 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 23 def media @media end |
#profile ⇒ XTwitterScraper::Resources::X::Profile (readonly)
X write actions (tweets, likes, follows, DMs)
27 28 29 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 27 def profile @profile end |
#tweets ⇒ XTwitterScraper::Resources::X::Tweets (readonly)
8 9 10 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 8 def tweets @tweets end |
#users ⇒ XTwitterScraper::Resources::X::Users (readonly)
X data lookups (subscription required)
12 13 14 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 12 def users @users end |
Instance Method Details
#get_article(tweet_id, request_options: {}) ⇒ XTwitterScraper::Models::XGetArticleResponse
Retrieve the full content of an X Article (long-form post) by tweet ID.
55 56 57 58 59 60 61 62 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 55 def get_article(tweet_id, params = {}) @client.request( method: :get, path: ["x/articles/%1$s", tweet_id], model: XTwitterScraper::Models::XGetArticleResponse, options: params[:request_options] ) end |
#get_home_timeline(cursor: nil, seen_tweet_ids: nil, request_options: {}) ⇒ XTwitterScraper::Models::PaginatedTweets
Get home timeline
77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 77 def get_home_timeline(params = {}) parsed, = XTwitterScraper::XGetHomeTimelineParams.dump_request(params) query = XTwitterScraper::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: "x/timeline", query: query.transform_keys(seen_tweet_ids: "seenTweetIds"), model: XTwitterScraper::PaginatedTweets, options: ) end |
#get_notifications(cursor: nil, type: nil, request_options: {}) ⇒ XTwitterScraper::Models::XGetNotificationsResponse
Get notifications
102 103 104 105 106 107 108 109 110 111 112 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 102 def get_notifications(params = {}) parsed, = XTwitterScraper::XGetNotificationsParams.dump_request(params) query = XTwitterScraper::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: "x/notifications", query: query, model: XTwitterScraper::Models::XGetNotificationsResponse, options: ) end |
#get_trends(request_options: {}) ⇒ XTwitterScraper::Models::XGetTrendsResponse
Get trending topics
123 124 125 126 127 128 129 130 |
# File 'lib/x_twitter_scraper/resources/x.rb', line 123 def get_trends(params = {}) @client.request( method: :get, path: "x/trends", model: XTwitterScraper::Models::XGetTrendsResponse, options: params[:request_options] ) end |