x-twitter-scraper 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -0
- data/README.md +1 -1
- data/lib/x_twitter_scraper/internal/type/union.rb +25 -9
- data/lib/x_twitter_scraper/models/content_disclosure.rb +1 -9
- data/lib/x_twitter_scraper/models/embedded_tweet.rb +389 -1
- data/lib/x_twitter_scraper/models/paginated_tweets.rb +4 -5
- data/lib/x_twitter_scraper/models/search_tweet.rb +371 -1
- data/lib/x_twitter_scraper/models/support/ticket_list_response.rb +30 -17
- data/lib/x_twitter_scraper/models/support/ticket_retrieve_response.rb +49 -24
- data/lib/x_twitter_scraper/models/support/ticket_update_response.rb +18 -6
- data/lib/x_twitter_scraper/models/trend_list_response.rb +28 -1
- data/lib/x_twitter_scraper/models/tweet_media.rb +213 -1
- data/lib/x_twitter_scraper/models/user_profile.rb +211 -21
- data/lib/x_twitter_scraper/models/x/account_connection_attempt_retrieve_response.rb +60 -26
- data/lib/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rb +4 -4
- data/lib/x_twitter_scraper/models/x/account_create_response.rb +149 -2
- data/lib/x_twitter_scraper/models/x/account_reauth_response.rb +4 -4
- data/lib/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/communities/tweet_list_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/community_retrieve_info_response.rb +1 -17
- data/lib/x_twitter_scraper/models/x/community_retrieve_search_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/list_retrieve_tweets_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/tweet_author.rb +14 -1
- data/lib/x_twitter_scraper/models/x/tweet_detail.rb +373 -1
- data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +34 -6
- data/lib/x_twitter_scraper/models/x/tweet_get_replies_response.rb +345 -0
- data/lib/x_twitter_scraper/models/x/tweet_get_thread_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/user_retrieve_replies_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +3 -5
- data/lib/x_twitter_scraper/models/x_get_article_response.rb +1 -7
- data/lib/x_twitter_scraper/models/x_get_trends_response.rb +28 -1
- data/lib/x_twitter_scraper/resources/x/account_connection_attempts.rb +1 -1
- data/lib/x_twitter_scraper/resources/x/accounts.rb +2 -2
- data/lib/x_twitter_scraper/resources/x/communities/tweets.rb +2 -2
- data/lib/x_twitter_scraper/resources/x/communities.rb +1 -1
- data/lib/x_twitter_scraper/resources/x/lists.rb +1 -1
- data/lib/x_twitter_scraper/resources/x/tweets.rb +14 -11
- data/lib/x_twitter_scraper/resources/x/users.rb +5 -5
- data/lib/x_twitter_scraper/version.rb +1 -1
- data/lib/x_twitter_scraper.rb +2 -1
- data/rbi/x_twitter_scraper/models/content_disclosure.rbi +1 -15
- data/rbi/x_twitter_scraper/models/embedded_tweet.rbi +708 -3
- data/rbi/x_twitter_scraper/models/paginated_tweets.rbi +4 -5
- data/rbi/x_twitter_scraper/models/search_tweet.rbi +674 -3
- data/rbi/x_twitter_scraper/models/support/ticket_list_response.rbi +75 -55
- data/rbi/x_twitter_scraper/models/support/ticket_retrieve_response.rbi +129 -87
- data/rbi/x_twitter_scraper/models/support/ticket_update_response.rbi +62 -13
- data/rbi/x_twitter_scraper/models/trend_list_response.rbi +40 -3
- data/rbi/x_twitter_scraper/models/tweet_media.rbi +313 -3
- data/rbi/x_twitter_scraper/models/user_profile.rbi +340 -29
- data/rbi/x_twitter_scraper/models/x/account_connection_attempt_retrieve_response.rbi +61 -83
- data/rbi/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/account_create_response.rbi +264 -2
- data/rbi/x_twitter_scraper/models/x/account_reauth_response.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/communities/tweet_list_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/community_retrieve_info_response.rbi +0 -22
- data/rbi/x_twitter_scraper/models/x/community_retrieve_search_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/list_retrieve_tweets_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/tweet_author.rbi +13 -3
- data/rbi/x_twitter_scraper/models/x/tweet_detail.rbi +690 -3
- data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +68 -8
- data/rbi/x_twitter_scraper/models/x/tweet_get_replies_response.rbi +527 -0
- data/rbi/x_twitter_scraper/models/x/tweet_get_thread_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/user_retrieve_replies_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +4 -8
- data/rbi/x_twitter_scraper/models/x_get_article_response.rbi +0 -9
- data/rbi/x_twitter_scraper/models/x_get_trends_response.rbi +40 -3
- data/rbi/x_twitter_scraper/resources/x/accounts.rbi +1 -1
- data/rbi/x_twitter_scraper/resources/x/communities/tweets.rbi +4 -8
- data/rbi/x_twitter_scraper/resources/x/communities.rbi +2 -4
- data/rbi/x_twitter_scraper/resources/x/lists.rbi +2 -4
- data/rbi/x_twitter_scraper/resources/x/tweets.rbi +20 -18
- data/rbi/x_twitter_scraper/resources/x/users.rbi +10 -20
- data/sig/x_twitter_scraper/models/content_disclosure.rbs +1 -11
- data/sig/x_twitter_scraper/models/embedded_tweet.rbs +343 -62
- data/sig/x_twitter_scraper/models/search_tweet.rbs +333 -70
- data/sig/x_twitter_scraper/models/support/ticket_list_response.rbs +29 -32
- data/sig/x_twitter_scraper/models/support/ticket_retrieve_response.rbs +49 -48
- data/sig/x_twitter_scraper/models/support/ticket_update_response.rbs +25 -7
- data/sig/x_twitter_scraper/models/trend_list_response.rbs +16 -20
- data/sig/x_twitter_scraper/models/tweet_media.rbs +146 -15
- data/sig/x_twitter_scraper/models/user_profile.rbs +164 -86
- data/sig/x_twitter_scraper/models/x/account_connection_attempt_retrieve_response.rbs +50 -33
- data/sig/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rbs +5 -5
- data/sig/x_twitter_scraper/models/x/account_create_response.rbs +147 -1
- data/sig/x_twitter_scraper/models/x/account_reauth_response.rbs +5 -5
- data/sig/x_twitter_scraper/models/x/community_retrieve_info_response.rbs +0 -14
- data/sig/x_twitter_scraper/models/x/tweet_author.rbs +11 -3
- data/sig/x_twitter_scraper/models/x/tweet_detail.rbs +333 -70
- data/sig/x_twitter_scraper/models/x/tweet_get_replies_params.rbs +26 -0
- data/sig/x_twitter_scraper/models/x/tweet_get_replies_response.rbs +274 -0
- data/sig/x_twitter_scraper/models/x_get_article_response.rbs +0 -7
- data/sig/x_twitter_scraper/models/x_get_trends_response.rbs +25 -3
- data/sig/x_twitter_scraper/resources/x/accounts.rbs +1 -1
- data/sig/x_twitter_scraper/resources/x/tweets.rbs +3 -1
- metadata +4 -1
|
@@ -113,13 +113,6 @@ module XTwitterScraper
|
|
|
113
113
|
sig { params(invites_policy: String).void }
|
|
114
114
|
attr_writer :invites_policy
|
|
115
115
|
|
|
116
|
-
# Whether the authenticated viewer is a member
|
|
117
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
118
|
-
attr_reader :is_member
|
|
119
|
-
|
|
120
|
-
sig { params(is_member: T::Boolean).void }
|
|
121
|
-
attr_writer :is_member
|
|
122
|
-
|
|
123
116
|
# Whether the community is marked sensitive
|
|
124
117
|
sig { returns(T.nilable(T::Boolean)) }
|
|
125
118
|
attr_reader :is_nsfw
|
|
@@ -173,13 +166,6 @@ module XTwitterScraper
|
|
|
173
166
|
end
|
|
174
167
|
attr_writer :primary_topic
|
|
175
168
|
|
|
176
|
-
# Authenticated viewer's community role
|
|
177
|
-
sig { returns(T.nilable(String)) }
|
|
178
|
-
attr_reader :role
|
|
179
|
-
|
|
180
|
-
sig { params(role: String).void }
|
|
181
|
-
attr_writer :role
|
|
182
|
-
|
|
183
169
|
# Community rules
|
|
184
170
|
sig do
|
|
185
171
|
returns(
|
|
@@ -212,7 +198,6 @@ module XTwitterScraper
|
|
|
212
198
|
XTwitterScraper::Models::X::CommunityRetrieveInfoResponse::Community::Creator::OrHash,
|
|
213
199
|
description: String,
|
|
214
200
|
invites_policy: String,
|
|
215
|
-
is_member: T::Boolean,
|
|
216
201
|
is_nsfw: T::Boolean,
|
|
217
202
|
join_policy: String,
|
|
218
203
|
member_count: Integer,
|
|
@@ -220,7 +205,6 @@ module XTwitterScraper
|
|
|
220
205
|
name: String,
|
|
221
206
|
primary_topic:
|
|
222
207
|
XTwitterScraper::Models::X::CommunityRetrieveInfoResponse::Community::PrimaryTopic::OrHash,
|
|
223
|
-
role: String,
|
|
224
208
|
rules:
|
|
225
209
|
T::Array[
|
|
226
210
|
XTwitterScraper::Models::X::CommunityRetrieveInfoResponse::Community::Rule::OrHash
|
|
@@ -239,8 +223,6 @@ module XTwitterScraper
|
|
|
239
223
|
description: nil,
|
|
240
224
|
# Invitation policy
|
|
241
225
|
invites_policy: nil,
|
|
242
|
-
# Whether the authenticated viewer is a member
|
|
243
|
-
is_member: nil,
|
|
244
226
|
# Whether the community is marked sensitive
|
|
245
227
|
is_nsfw: nil,
|
|
246
228
|
# Join policy (open or restricted)
|
|
@@ -253,8 +235,6 @@ module XTwitterScraper
|
|
|
253
235
|
name: nil,
|
|
254
236
|
# Primary topic
|
|
255
237
|
primary_topic: nil,
|
|
256
|
-
# Authenticated viewer's community role
|
|
257
|
-
role: nil,
|
|
258
238
|
# Community rules
|
|
259
239
|
rules: nil
|
|
260
240
|
)
|
|
@@ -270,7 +250,6 @@ module XTwitterScraper
|
|
|
270
250
|
XTwitterScraper::Models::X::CommunityRetrieveInfoResponse::Community::Creator,
|
|
271
251
|
description: String,
|
|
272
252
|
invites_policy: String,
|
|
273
|
-
is_member: T::Boolean,
|
|
274
253
|
is_nsfw: T::Boolean,
|
|
275
254
|
join_policy: String,
|
|
276
255
|
member_count: Integer,
|
|
@@ -278,7 +257,6 @@ module XTwitterScraper
|
|
|
278
257
|
name: String,
|
|
279
258
|
primary_topic:
|
|
280
259
|
XTwitterScraper::Models::X::CommunityRetrieveInfoResponse::Community::PrimaryTopic,
|
|
281
|
-
role: String,
|
|
282
260
|
rules:
|
|
283
261
|
T::Array[
|
|
284
262
|
XTwitterScraper::Models::X::CommunityRetrieveInfoResponse::Community::Rule
|
|
@@ -34,10 +34,8 @@ module XTwitterScraper
|
|
|
34
34
|
sig { params(cursor: String).void }
|
|
35
35
|
attr_writer :cursor
|
|
36
36
|
|
|
37
|
-
# Maximum items
|
|
38
|
-
#
|
|
39
|
-
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
40
|
-
# has_next_page is true, even when a page is empty. The deprecated limit and count
|
|
37
|
+
# Maximum page items (1-100, default 20). Source, filters, or credits can reduce
|
|
38
|
+
# results. Continue while has_next_page is true. Deprecated limit and count
|
|
41
39
|
# aliases remain accepted.
|
|
42
40
|
sig { returns(T.nilable(Integer)) }
|
|
43
41
|
attr_reader :page_size
|
|
@@ -81,10 +79,8 @@ module XTwitterScraper
|
|
|
81
79
|
q:,
|
|
82
80
|
# Pagination cursor for community search
|
|
83
81
|
cursor: nil,
|
|
84
|
-
# Maximum items
|
|
85
|
-
#
|
|
86
|
-
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
87
|
-
# has_next_page is true, even when a page is empty. The deprecated limit and count
|
|
82
|
+
# Maximum page items (1-100, default 20). Source, filters, or credits can reduce
|
|
83
|
+
# results. Continue while has_next_page is true. Deprecated limit and count
|
|
88
84
|
# aliases remain accepted.
|
|
89
85
|
page_size: nil,
|
|
90
86
|
# Sort order (Latest or Top)
|
|
@@ -36,10 +36,8 @@ module XTwitterScraper
|
|
|
36
36
|
sig { params(include_replies: T::Boolean).void }
|
|
37
37
|
attr_writer :include_replies
|
|
38
38
|
|
|
39
|
-
# Maximum items
|
|
40
|
-
#
|
|
41
|
-
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
42
|
-
# has_next_page is true, even when a page is empty. The deprecated limit and count
|
|
39
|
+
# Maximum page items (1-100, default 20). Source, filters, or credits can reduce
|
|
40
|
+
# results. Continue while has_next_page is true. Deprecated limit and count
|
|
43
41
|
# aliases remain accepted.
|
|
44
42
|
sig { returns(T.nilable(Integer)) }
|
|
45
43
|
attr_reader :page_size
|
|
@@ -78,10 +76,8 @@ module XTwitterScraper
|
|
|
78
76
|
cursor: nil,
|
|
79
77
|
# Include replies (default false)
|
|
80
78
|
include_replies: nil,
|
|
81
|
-
# Maximum items
|
|
82
|
-
#
|
|
83
|
-
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
84
|
-
# has_next_page is true, even when a page is empty. The deprecated limit and count
|
|
79
|
+
# Maximum page items (1-100, default 20). Source, filters, or credits can reduce
|
|
80
|
+
# results. Continue while has_next_page is true. Deprecated limit and count
|
|
85
81
|
# aliases remain accepted.
|
|
86
82
|
page_size: nil,
|
|
87
83
|
# Unix timestamp - filter after
|
|
@@ -16,13 +16,23 @@ module XTwitterScraper
|
|
|
16
16
|
)
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
+
sig { returns(Integer) }
|
|
20
|
+
attr_accessor :followers
|
|
21
|
+
|
|
22
|
+
sig { returns(T::Boolean) }
|
|
23
|
+
attr_accessor :verified
|
|
24
|
+
|
|
19
25
|
# Tweet author profile. The lookup route always includes follower count and
|
|
20
26
|
# verification state. Other profile fields appear when available.
|
|
21
|
-
sig
|
|
22
|
-
|
|
27
|
+
sig do
|
|
28
|
+
params(followers: Integer, verified: T::Boolean).returns(
|
|
29
|
+
T.attached_class
|
|
30
|
+
)
|
|
31
|
+
end
|
|
32
|
+
def self.new(followers:, verified:)
|
|
23
33
|
end
|
|
24
34
|
|
|
25
|
-
sig { override.returns({}) }
|
|
35
|
+
sig { override.returns({ followers: Integer, verified: T::Boolean }) }
|
|
26
36
|
def to_hash
|
|
27
37
|
end
|
|
28
38
|
end
|