Использование TwitterAPI (python) для поиска твитов от определенных c пользователей - PullRequest
1 голос
/ 16 июня 2020

Для своего исследования я хотел бы создать обзор твитов, опубликованных конкретными c пользователями (как недавними, так и историческими - с помощью расширенного поиска). У меня нет опыта кодирования, поэтому я начал с нескольких очень простых c видеороликов, объясняющих возможности. Поскольку я хотел бы выполнить поиск в историческом архиве Twitter, я пришел к выводу, что tweepy - не лучший вариант, и я следовал руководству по использованию TwitterAPI вместо этого. В итоге я получил следующее:

SEARCH_TERM = 'example'
COUNT = 100

r = api.request('search/tweets', {'q': SEARCH_TERM, 'count': COUNT})

a = 1
for item in r.get_iterator():
    print(a)
    print(item['text'] if 'text' in item else item)
    a=a+1
print('\nQUOTA: %s' % r.get_quota())

Однако я не могу понять, как я могу искать одно конкретное c имя пользователя вместо обычного c условия поиска. Я попытался просто добавить имя пользователя (twitterhandle) в качестве условия поиска, как с @, так и без него, но это не дает мне твитов для этой учетной записи c.

У кого-нибудь есть опыт с этим?

1 Ответ

0 голосов
/ 21 июня 2020

Вам нужно будет использовать запрос statuses / user_timeline . Просто внесите следующие изменения в свой пример кода:

r = api.request('statuses/user_timeline', 
                {'screen_name':SEARCH_TERM, 'count':COUNT})

Установите SEARCH_TERM на дескриптор пользователя. Вы также можете увеличить COUNT до 200.

Обратите внимание, что ни statuses/user_timeline, ни search/tweets не являются запросами Premium Search . Чтобы сделать запрос Premium Search, вам потребуется авторизация в Twitter, а затем вы должны внести это изменение в свой пример:

r = api.request('tweets/search/%s/:%s' % (PRODUCT, LABEL), 
                {'query':'from:'+SEARCH_TERM, 'maxResults':500})

Для любого типа запроса также можно получить гораздо больше результатов, чем указано максимальное количество. Для этого вам нужно будет использовать метод Twitter для получения последовательных страниц результатов. TwitterAPI имеет вспомогательный класс, который делает это за вас. Краткий пример можно найти здесь , и его можно изменить для использования запроса Premium Search или запроса временной шкалы пользователя.

...