Параметр поля расширения twitter api v2 возвращает меньше данных, чем конечная точка

user_data = 'user.fields=description,location,name,public_metrics,username,verified'
expand = 'expansions=author_id'
tag = 'new zealand -is:retweet'
url = "https://api.twitter.com/2/tweets/search/recent?query = {}&{}&{}".format(tag, expand, user_data)

так я организовал свой запрос, скажем, максимальное количество данных, которые я хочу получить от этой конечной точки, равно 20, я могу использовать поле расширения, чтобы получить дополнительные данные об авторе твита, проблема в том, что полезная нагрузка поля расширения не соответствует данные по умолчанию возвращаются конечной точкой. например, если конечная точка возвращает 20 твитов, поле расширения также возвращает 20 полей, но в моем случае иногда я получаю только 1, помогите, пожалуйста...

Образец ответа API

  data part
    {'data': [{'id': '1341144983215239170',
       'lang': 'en',
       'created_at': '2020-12-21T22:14:15.000Z',
       'text': "@chrissy99912291 Is it because he's neo? When DJ cuppy said she needs iPhone 12 no one dragged her, why y'all pressed? What kind of mentality is this?",
       'author_id': '1268532525321932803',
       'public_metrics': {'retweet_count': 0,
        'reply_count': 0,
        'like_count': 0,
        'quote_count': 0}},

включить ['пользовательскую] часть

{'username': 'AOmozoya',
    'description': "I'm gifted",
    'id': '1102564893071429633',
    'verified': False,
    'location': 'xx, xx,
    'public_metrics': {'followers_count': 64,
     'following_count': 383,
     'tweet_count': 608,
     'listed_count': 0},
    'name': 'Special_miracle'},

длина двух ответов должна была быть одинаковой для этого конкретного ответа, когда я пытаюсь проверить длину обоих таким образом. data — это имя ответа json.

len(data['data'])
>>100

в то время как

len(data['includes']['user'])
>>32

пользовательские данные должны соответствовать каждому твиту.

Можете ли вы привести пример того, что вы имеете в виду здесь?

Andy Piper 21.12.2020 19:12

@AndyPiper Я добавил пример результата, пожалуйста, посмотрите, спасибо

Azucode 22.12.2020 12:11

Представлены ли одни и те же пользователи более одного раза?

Andy Piper 22.12.2020 14:40

Нет, я так не думаю, я должен перепроверить

Azucode 22.12.2020 16:11
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
4
600
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Трудно разобраться в этой проблеме без более подробной информации о возвращенных пользователях.

Тем не менее, я бы рекомендовал пакет osometweet . В настоящее время он находится в разработке, однако в ветке поиска есть метод поиска, которому вы можете передать свой запрос с интересующими вас параметрами расширения.

Посетите вики, где есть много инструкций.

Это потому, что это не соответствует количеству твитов.

Если предположим, что пользователь часто встречается в некоторых твитах, то пользователь присутствует только один раз.

Другие вопросы по теме