CoderCastrov logo
CoderCastrov
Осинт

EnsembleData: Парсинг социальных медиа-сайтов с использованием API

EnsembleData: Парсинг социальных медиа-сайтов с использованием API
просмотров
3 мин чтение
#Осинт

EnsembleData, активный провайдер API для парсинга социальных медиа-сайтов с 2020 года, предлагает возможность извлекать данные в реальном времени с популярных платформ социальных медиа, включая TikTok, Instagram, YouTube, Twitch и Reddit.

Хотя инструмент в основном платный, разработчик предоставляет новым зарегистрированным пользователям 7-дневную пробную версию, чтобы новички могли ознакомиться с инструментом.

Требования:



Регистрация аккаунта

Процесс регистрации аккаунта довольно прост, поскольку пользователю нужно только предоставить свой адрес электронной почты и пароль.

После регистрации пользователю необходимо подтвердить свою электронную почту, прежде чем получить полный доступ к API инструмента.


Использование

Процесс использования довольно прост и состоит из двух шагов:

Затем перейдите на страницу документации API EnsembleData, чтобы выбрать предпочтительный способ использования токена API.

EnsembleData в основном измеряет ежедневное использование API с помощью валюты, которую они описывают как единицы. Это также означает, что в зависимости от API и его параметров каждый запрос к API имеет разную стоимость в единицах.

Каждому клиенту/пользователю присваивается уникальный токен API, необходимый для доступа ко всем API EnsembleData. Токен должен использоваться во всех GET-запросах, отправляемых нашей инфраструктуре.

Использование TikTok API

В настоящее время не существует множества инструментов для парсинга данных на TikTok, но EnsembleData предоставляет приемлемую альтернативу для тех, кто хочет собирать данные с веб-сайта.

Поиск по хэштегу

Запрос извлекает набор записей, содержащих определенный хэштег, с веб-страницы https://www.tiktok.com/tag/hashtag.

Один вызов этого конечной точки возвращает максимум 20 записей. Курсор может быть увеличен для извлечения большего количества записей. cursor=0 извлечет записи с 1 по 20, cursor=20 извлечет записи с 21 по 40 и так далее. Максимальное значение курсора, которое можно ввести, составляет около 4000-5000 в зависимости от хэштега.

import requests
import json

root = "https://www.ensembledata.com/apis"
endpoint = "/tt/hashtag/posts"
params = {
  "name": "ted lasso",
  "cursor": 0,
  "token": "************"
}

res = requests.get(root+endpoint, params=params)

if res.status_code == 200:
    data = res.json()

    # Укажите путь к файлу для сохранения данных
    file_path = "data.json"

    # Откройте файл в режиме записи
    with open(file_path, 'w') as file:
        # Запишите данные JSON в файл
        json.dump(data, file)

    print("Данные успешно сохранены.")
else:
    print("Запрос к API завершился с ошибкой. Код состояния:", res.status_code)

Выполненный выше скрипт не только парсит данные с страницы хэштегов TikTok на основе определенного хэштега, но также сохраняет данные в файле JSON для дальнейшего анализа или визуализации.

Однако, в зависимости от ситуации, ответ может отличаться в соответствии с кодом ошибки API, показанным ниже:

Типы ответов от EnsembleData в зависимости от результатов
import requests
import json

root = "https://www.ensembledata.com/apis"
endpoint = "/tt/user/info"
params = {
  "username": "young.kippa",
  "token": "XXXXXXXXXXXXXXXX"
}

res = requests.get(root+endpoint, params=params)

# Сохраняем полученные данные в файл JSON
with open("profile.json", "w") as file:
    json.dump(res.json(), file)

# Выводим код состояния
print("Код состояния:", res.status_code)

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

Извлечение информации о пользователе по имени пользователя

Автор: https://ensembledata.com