В этом посте мы узнаем, как создавать визуализации, используя Чирикать считает Функциональность в Twitter API V2
Tweet Counts дает вам громкость твитов, которые соответствует поисковому запросу Twitter. Таким образом, если вы заинтересованы в том, чтобы увидеть, как поисковый термин зависит с точки зрения объема Tweet в течение определенного периода времени, вы можете получить эту информацию, используя Twitter API V2.
В настоящее время Twitter API V2 поддерживает эту функцию 2 способа:
Использование Tweet считает любой разработчик может получить счет (том) твитов за последние 7 дней
Использование Полноархив Tweet считает Академические исследователи могут получить количество твитов от полноэргического проведения общественных твитов
Для того, чтобы следовать этому руководству, вам нужен утвержденный счет разработчиков. После того, как у вас есть учетная запись разработчика, вам понадобится токен предъявителя для подключения к Twitter API V2, чтобы получить Tweet Counts для поиска. Следуйте этим инструкциям для получения токена на предъявителя.
Для этой демонстрации мы будем использовать Twarc Библиотека в Python для подключения к Twitter API V2 и Сюжер Библиотека для создания визуализации.
Чтобы установить сюжету, запустите следующее в своем терминале
pip3 install plotly
Чтобы установить Twarc, запустите следующее в своем терминале
pip3 install twarc
Как только у вас установлены эти библиотеки, импортируйте их. Чтобы отобразить ответ JSON из API Twitter для Tweet Counts, мы будем использовать библиотеку JSON.
import plotly.graph_objects as go from twarc import Twarc2 import json
Далее настройте клиент TWARC (что вы будете использовать, чтобы получить твит, рассчитан на Twitter API V2) с токеном вашего носителя
# Replace with your own bearer token client = Twarc2( bearer_token="REPLACE_ME")
Затем укажите запрос, который вы хотите, чтобы Tweet рассчитывает. Узнайте больше о строительных запросах здесь
# Replace the query below with your own query query = "#TwitterAPI"
Далее используйте counts_recent Способ в TWARC, чтобы получить твит, подсчитывает для поискового запроса за последние 7 дней. Агрегация по умолчанию данных находится на почасовом уровне. Если вы хотите, чтобы данные агрегировали на дневном уровне, укажите, что используя Грануальливость параметр
# Get the recent Tweet counts using Twarc for your query by day search_results = client.counts_recent(query=query, granularity='day') for page in search_results: # Get the data object from the Tweet counts response which contains the daily Tweet count data = page['data'] break print(json.dumps(data, indent=2))
Ответ будет выглядеть так:
[ { "end": "2021-07-02T00:00:00.000Z", "start": "2021-07-01T22:57:15.000Z", "tweet_count": 1 }, { "end": "2021-07-03T00:00:00.000Z", "start": "2021-07-02T00:00:00.000Z", "tweet_count": 36 }, { "end": "2021-07-04T00:00:00.000Z", "start": "2021-07-03T00:00:00.000Z", "tweet_count": 9 }, { "end": "2021-07-05T00:00:00.000Z", "start": "2021-07-04T00:00:00.000Z", "tweet_count": 4 }, { "end": "2021-07-06T00:00:00.000Z", "start": "2021-07-05T00:00:00.000Z", "tweet_count": 5 }, { "end": "2021-07-07T00:00:00.000Z", "start": "2021-07-06T00:00:00.000Z", "tweet_count": 12 }, { "end": "2021-07-08T00:00:00.000Z", "start": "2021-07-07T00:00:00.000Z", "tweet_count": 7 }, { "end": "2021-07-08T22:57:15.000Z", "start": "2021-07-08T00:00:00.000Z", "tweet_count": 10 } ]
Чтобы отобразить Tweet Counts в гистограмме, мы получим Начать Дата в списке называется день для отображения на оси X и соответствующим Tweet_Counts В списке под названием Tweet_Counts для отображения на оси Y
day = [] tweet_counts = [] for d in data: # Add the start date to display on x-axis day.append(d['start'][:10]) # Add the daily Tweet counts to display on the y-axis tweet_counts.append(d['tweet_count'])
Далее мы создадим фигуру для отображения диаграммы гистограммы (используя график_objects in Purth)
# Build a bar chart fig = go.Figure(data=[go.Bar(x=day, y=tweet_counts)])
Затем мы добавим соответствующие названия для X и Оси Y.
# Add the titles fig.update_layout(xaxis_title="Time Period", yaxis_title="Tweet Counts", title_text='Tweets by day for {}'.format(query))
Примечание: При запуске кода на локальном компьютере (за пределами этого ноутбука) вам также придется писать
fig.show()
Чтобы увидеть визуализацию, которая будет выглядеть так:
Ниже приведен полный выбор код, который вы можете подключить и играть на локальной машине. Просто добавьте токен своего носителя и убедитесь, что у вас установлены библиотеки.
import plotly.graph_objects as go from twarc import Twarc2 import json # Replace with your own bearer token client = Twarc2(bearer_token="XXXXX") # Replace the query below with your own query query = "#TwitterAPI" # Get the recent Tweet counts using Twarc for your query by day search_results = client.counts_recent(query=query, granularity='day') for page in search_results: # Get the data object from the Tweet counts response which contains the daily Tweet count data = page['data'] break print(json.dumps(data, indent=2)) day = [] tweet_counts = [] for d in data: # Add the start date to display on x-axis day.append(d['start'][:10]) # Add the daily Tweet counts to display on the y-axis tweet_counts.append(d['tweet_count']) # Build a bar chart fig = go.Figure(data=[go.Bar(x=day, y=tweet_counts)]) # Add the titles fig.update_layout(xaxis_title="Time Period", yaxis_title="Tweet Counts", title_text='Tweets by day for {}'.format(query)) fig.show()
В дополнение к гистограммам, вы также можете построить диаграммы линий и т. Д. Использование Pertly. Попробуйте разные запросы, чтобы увидеть разные результаты.
Получил отзыв? Обратитесь в Twitter @suhemparack.
Оригинал: “https://dev.to/twitterdev/building-visualizations-with-tweet-counts-from-the-twitter-api-v2-in-python-1nb0”