зеркало из
https://github.com/viginum-datalab/twscrape.git
synced 2025-10-28 20:54:24 +02:00
chore(gql): update endpoints to latest version
Этот коммит содержится в:
родитель
f0379a637a
Коммит
1e49e9fab9
2
.gitattributes
поставляемый
2
.gitattributes
поставляемый
@ -1 +1 @@
|
||||
tests/mocked-data/* binary merge
|
||||
tests/mocked-data/* linguist-generated=true
|
||||
|
||||
6077
tests/mocked-data/raw_followers.json
сгенерированный
6077
tests/mocked-data/raw_followers.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
2775
tests/mocked-data/raw_following.json
сгенерированный
2775
tests/mocked-data/raw_following.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
107735
tests/mocked-data/raw_list_timeline.json
сгенерированный
107735
tests/mocked-data/raw_list_timeline.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
899
tests/mocked-data/raw_retweeters.json
сгенерированный
899
tests/mocked-data/raw_retweeters.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
6312
tests/mocked-data/raw_search.json
сгенерированный
6312
tests/mocked-data/raw_search.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
2698
tests/mocked-data/raw_subscriptions.json
сгенерированный
2698
tests/mocked-data/raw_subscriptions.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
990
tests/mocked-data/raw_tweet_details.json
сгенерированный
990
tests/mocked-data/raw_tweet_details.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
1614
tests/mocked-data/raw_tweet_replies.json
сгенерированный
1614
tests/mocked-data/raw_tweet_replies.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
20
tests/mocked-data/raw_user_by_id.json
сгенерированный
20
tests/mocked-data/raw_user_by_id.json
сгенерированный
@ -49,25 +49,25 @@
|
||||
}
|
||||
},
|
||||
"fast_followers_count": 0,
|
||||
"favourites_count": 2140,
|
||||
"followers_count": 660093,
|
||||
"friends_count": 1573,
|
||||
"favourites_count": 2165,
|
||||
"followers_count": 678141,
|
||||
"friends_count": 748,
|
||||
"has_custom_timelines": true,
|
||||
"is_translator": false,
|
||||
"listed_count": 2717,
|
||||
"listed_count": 2714,
|
||||
"location": "127.0.0.1",
|
||||
"media_count": 820,
|
||||
"media_count": 821,
|
||||
"name": "Developers",
|
||||
"normal_followers_count": 660093,
|
||||
"normal_followers_count": 678141,
|
||||
"pinned_tweet_ids_str": [
|
||||
"1770153912013615285"
|
||||
"1851463451929186504"
|
||||
],
|
||||
"possibly_sensitive": false,
|
||||
"profile_banner_url": "https://pbs.twimg.com/profile_banners/2244994945/1690213128",
|
||||
"profile_image_url_https": "https://pbs.twimg.com/profile_images/1683501992314798080/xl1POYLw_normal.jpg",
|
||||
"profile_interstitial_type": "",
|
||||
"screen_name": "XDevelopers",
|
||||
"statuses_count": 4054,
|
||||
"statuses_count": 4063,
|
||||
"translator_type": "regular",
|
||||
"url": "https://t.co/O13IfbuPqq",
|
||||
"verified": false,
|
||||
@ -87,12 +87,10 @@
|
||||
]
|
||||
},
|
||||
"tipjar_settings": {},
|
||||
"smart_blocked_by": false,
|
||||
"smart_blocking": false,
|
||||
"business_account": {},
|
||||
"highlights_info": {
|
||||
"can_highlight_tweets": true,
|
||||
"highlighted_tweets": "1"
|
||||
"highlighted_tweets": "2"
|
||||
},
|
||||
"creator_subscriptions_count": 0,
|
||||
"has_hidden_subscriptions_on_profile": false
|
||||
|
||||
20
tests/mocked-data/raw_user_by_login.json
сгенерированный
20
tests/mocked-data/raw_user_by_login.json
сгенерированный
@ -49,25 +49,25 @@
|
||||
}
|
||||
},
|
||||
"fast_followers_count": 0,
|
||||
"favourites_count": 2140,
|
||||
"followers_count": 660093,
|
||||
"friends_count": 1573,
|
||||
"favourites_count": 2165,
|
||||
"followers_count": 678141,
|
||||
"friends_count": 748,
|
||||
"has_custom_timelines": true,
|
||||
"is_translator": false,
|
||||
"listed_count": 2717,
|
||||
"listed_count": 2714,
|
||||
"location": "127.0.0.1",
|
||||
"media_count": 820,
|
||||
"media_count": 821,
|
||||
"name": "Developers",
|
||||
"normal_followers_count": 660093,
|
||||
"normal_followers_count": 678141,
|
||||
"pinned_tweet_ids_str": [
|
||||
"1770153912013615285"
|
||||
"1851463451929186504"
|
||||
],
|
||||
"possibly_sensitive": false,
|
||||
"profile_banner_url": "https://pbs.twimg.com/profile_banners/2244994945/1690213128",
|
||||
"profile_image_url_https": "https://pbs.twimg.com/profile_images/1683501992314798080/xl1POYLw_normal.jpg",
|
||||
"profile_interstitial_type": "",
|
||||
"screen_name": "XDevelopers",
|
||||
"statuses_count": 4054,
|
||||
"statuses_count": 4063,
|
||||
"translator_type": "regular",
|
||||
"url": "https://t.co/O13IfbuPqq",
|
||||
"verified": false,
|
||||
@ -87,8 +87,6 @@
|
||||
]
|
||||
},
|
||||
"tipjar_settings": {},
|
||||
"smart_blocked_by": false,
|
||||
"smart_blocking": false,
|
||||
"legacy_extended_profile": {},
|
||||
"is_profile_translatable": false,
|
||||
"has_hidden_subscriptions_on_profile": false,
|
||||
@ -120,7 +118,7 @@
|
||||
},
|
||||
"highlights_info": {
|
||||
"can_highlight_tweets": true,
|
||||
"highlighted_tweets": "1"
|
||||
"highlighted_tweets": "2"
|
||||
},
|
||||
"business_account": {},
|
||||
"creator_subscriptions_count": 0
|
||||
|
||||
4735
tests/mocked-data/raw_user_media.json
сгенерированный
4735
tests/mocked-data/raw_user_media.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
17930
tests/mocked-data/raw_user_tweets.json
сгенерированный
17930
tests/mocked-data/raw_user_tweets.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
14084
tests/mocked-data/raw_user_tweets_and_replies.json
сгенерированный
14084
tests/mocked-data/raw_user_tweets_and_replies.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
2754
tests/mocked-data/raw_verified_followers.json
сгенерированный
2754
tests/mocked-data/raw_verified_followers.json
сгенерированный
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
@ -10,22 +10,22 @@ from .queue_client import QueueClient
|
||||
from .utils import encode_params, find_obj, get_by_path
|
||||
|
||||
# OP_{NAME} – {NAME} should be same as second part of GQL ID (required to auto-update script)
|
||||
OP_SearchTimeline = "UN1i3zUiCWa-6r-Uaho4fw/SearchTimeline"
|
||||
OP_UserByRestId = "Qw77dDjp9xCpUY-AXwt-yQ/UserByRestId"
|
||||
OP_UserByScreenName = "Yka-W8dz7RaEuQNkroPkYw/UserByScreenName"
|
||||
OP_TweetDetail = "QuBlQ6SxNAQCt6-kBiCXCQ/TweetDetail"
|
||||
OP_Followers = "OSXFkKmGvfw_6pGgGtkWFg/Followers"
|
||||
OP_Following = "7oQrdmth4zE3EtD42ZxgOA/Following"
|
||||
OP_Retweeters = "8019obfgnveiPiJuS2Rtow/Retweeters"
|
||||
OP_Favoriters = "vdCFYMdpzuRYY0zcio2a3Q/Favoriters"
|
||||
OP_UserTweets = "E3opETHurmVJflFsUBVuUQ/UserTweets"
|
||||
OP_UserTweetsAndReplies = "bt4TKuFz4T7Ckk-VvQVSow/UserTweetsAndReplies"
|
||||
OP_ListLatestTweetsTimeline = "Pa45JvqZuKcW1plybfgBlQ/ListLatestTweetsTimeline"
|
||||
OP_Likes = "aeJWz--kknVBOl7wQ7gh7Q/Likes"
|
||||
OP_BlueVerifiedFollowers = "cpPRJUmSz2Fiu1PpIYmEsw/BlueVerifiedFollowers"
|
||||
OP_UserCreatorSubscriptions = "qHaReNBi0rkhjAe14jrs6A/UserCreatorSubscriptions"
|
||||
OP_UserMedia = "dexO_2tohK86JDudXXG3Yw/UserMedia"
|
||||
OP_Bookmarks = "QUjXply7fA7fk05FRyajEg/Bookmarks"
|
||||
OP_SearchTimeline = "jiR2G5DAUAraqAYpcg9O-g/SearchTimeline"
|
||||
OP_UserByRestId = "LWxkCeL8Hlx0-f24DmPAJw/UserByRestId"
|
||||
OP_UserByScreenName = "QGIw94L0abhuohrr76cSbw/UserByScreenName"
|
||||
OP_TweetDetail = "GtcBtFhtQymrpxAs5MALVA/TweetDetail"
|
||||
OP_Followers = "r4fuEJKOqqzaYcvJU5ZWVA/Followers"
|
||||
OP_Following = "PgxzDG3JdZLoesQh41mcRw/Following"
|
||||
OP_Retweeters = "VCx3-p7GvELPtH0QHQcA0g/Retweeters"
|
||||
OP_Favoriters = "DDetc9RS4TZduc7kFfaFSA/Favoriters"
|
||||
OP_UserTweets = "bDGQZ9i975PnuFhihvzGug/UserTweets"
|
||||
OP_UserTweetsAndReplies = "bZ1YnUB32SSAfKXRwDM3jw/UserTweetsAndReplies"
|
||||
OP_ListLatestTweetsTimeline = "h-sxfUsIzy307vKGGTJR4g/ListLatestTweetsTimeline"
|
||||
OP_Likes = "8RCkxWhvFsJ8XZeNf_z5IQ/Likes"
|
||||
OP_BlueVerifiedFollowers = "srYtCtUs5BuBPbYj7agW6A/BlueVerifiedFollowers"
|
||||
OP_UserCreatorSubscriptions = "uFQJ--8sayYPxBqxav4W7A/UserCreatorSubscriptions"
|
||||
OP_UserMedia = "BGmkmGDG0kZPM-aoQtNTTw/UserMedia"
|
||||
OP_Bookmarks = "fa4kwoT3j5eDJCSKwFDXCw/Bookmarks"
|
||||
|
||||
|
||||
GQL_URL = "https://x.com/i/api/graphql"
|
||||
@ -56,6 +56,11 @@ GQL_FEATURES = { # search values here (view source) https://x.com/
|
||||
"tweetypie_unmention_optimization_enabled": True,
|
||||
"verified_phone_label_enabled": False,
|
||||
"view_counts_everywhere_api_enabled": True,
|
||||
"responsive_web_grok_analyze_button_fetch_trends_enabled": False,
|
||||
"premium_content_api_read_enabled": False,
|
||||
"profile_label_improvements_pcf_label_in_post_enabled": False,
|
||||
"responsive_web_grok_share_attachment_enabled": False,
|
||||
"responsive_web_grok_analyze_post_followups_enabled": False,
|
||||
}
|
||||
|
||||
|
||||
@ -179,6 +184,7 @@ class API:
|
||||
"hidden_profile_subscriptions_enabled": True,
|
||||
"responsive_web_twitter_article_notes_tab_enabled": False,
|
||||
"subscriptions_feature_can_gift_premium": False,
|
||||
"profile_label_improvements_pcf_label_in_post_enabled": False,
|
||||
}
|
||||
return await self._gql_item(op, kv, ft)
|
||||
|
||||
@ -200,6 +206,7 @@ class API:
|
||||
"subscriptions_verification_info_is_identity_verified_enabled": False,
|
||||
"responsive_web_twitter_article_notes_tab_enabled": False,
|
||||
"subscriptions_feature_can_gift_premium": False,
|
||||
"profile_label_improvements_pcf_label_in_post_enabled": False,
|
||||
}
|
||||
return await self._gql_item(op, kv, ft)
|
||||
|
||||
@ -279,7 +286,9 @@ class API:
|
||||
async def verified_followers_raw(self, uid: int, limit=-1, kv=None):
|
||||
op = OP_BlueVerifiedFollowers
|
||||
kv = {"userId": str(uid), "count": 20, "includePromotedContent": False, **(kv or {})}
|
||||
ft = {"responsive_web_twitter_article_notes_tab_enabled": True}
|
||||
ft = {
|
||||
"responsive_web_twitter_article_notes_tab_enabled": True,
|
||||
}
|
||||
async with aclosing(self._gql_items(op, kv, limit=limit, ft=ft)) as gen:
|
||||
async for x in gen:
|
||||
yield x
|
||||
|
||||
Загрузка…
x
Ссылка в новой задаче
Block a user