mirror of
https://github.com/bellingcat/snscrape.git
synced 2026-07-04 06:18:37 +03:00
Separate warnings for empty responses and unavailable users/communities
This commit is contained in:
@@ -1692,8 +1692,11 @@ class TwitterUserScraper(TwitterSearchScraper):
|
|||||||
endpoint = 'https://twitter.com/i/api/graphql/I5nvpI91ljifos1Y3Lltyg/UserByRestId'
|
endpoint = 'https://twitter.com/i/api/graphql/I5nvpI91ljifos1Y3Lltyg/UserByRestId'
|
||||||
variables = {fieldName: str(self._user), 'withSafetyModeUserFields': True, 'withSuperFollowsUserFields': True}
|
variables = {fieldName: str(self._user), 'withSafetyModeUserFields': True, 'withSuperFollowsUserFields': True}
|
||||||
obj = self._get_api_data(endpoint, _TwitterAPIType.GRAPHQL, params = {'variables': variables})
|
obj = self._get_api_data(endpoint, _TwitterAPIType.GRAPHQL, params = {'variables': variables})
|
||||||
if not obj['data'] or 'result' not in obj['data']['user'] or obj['data']['user']['result']['__typename'] == 'UserUnavailable':
|
if not obj['data'] or 'result' not in obj['data']['user']:
|
||||||
_logger.warning('Empty response or unavailable user')
|
_logger.warning('Empty response')
|
||||||
|
return None
|
||||||
|
if obj['data']['user']['result']['__typename'] == 'UserUnavailable':
|
||||||
|
_logger.warning('User unavailable')
|
||||||
return None
|
return None
|
||||||
user = obj['data']['user']['result']
|
user = obj['data']['user']['result']
|
||||||
rawDescription = user['legacy']['description']
|
rawDescription = user['legacy']['description']
|
||||||
@@ -2012,8 +2015,11 @@ class TwitterCommunityScraper(_TwitterAPIScraper):
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
obj = self._get_api_data('https://api.twitter.com/graphql/MO8cE7aTvaenXJX_teUGcA/CommunitiesFetchOneQuery', _TwitterAPIType.GRAPHQL, params = params)
|
obj = self._get_api_data('https://api.twitter.com/graphql/MO8cE7aTvaenXJX_teUGcA/CommunitiesFetchOneQuery', _TwitterAPIType.GRAPHQL, params = params)
|
||||||
if not obj['data'] or 'result' not in obj['data']['communityResults'] or obj['data']['communityResults']['result']['__typename'] == 'CommunityUnavailable':
|
if not obj['data'] or 'result' not in obj['data']['communityResults']:
|
||||||
_logger.warning('Empty response or unavailable community')
|
_logger.warning('Empty response')
|
||||||
|
return None
|
||||||
|
if obj['data']['communityResults']['result']['__typename'] == 'CommunityUnavailable':
|
||||||
|
_logger.warning('Community unavailable')
|
||||||
return None
|
return None
|
||||||
community = obj['data']['communityResults']['result']
|
community = obj['data']['communityResults']['result']
|
||||||
optKwargs = {}
|
optKwargs = {}
|
||||||
|
|||||||
Reference in New Issue
Block a user