ITDpy
Модель post
Пример ответа post
{
"id": "1e919573-cb93-42c6-b9c1-7d35d9484d9e",
"content": "Python клиент для API ИТД.com\n\nУдобные модели, refresh токена, кастомные запросы.\nПодходит для ботов и автоматизаций.\n\nhttps://github.com/Gam5510/ITDpy\n\nЭТО НЕ ОФИЦИАЛЬНЫЙ API \n#api #python #sdk",
"spans": [
{
"tag": "api",
"type": "hashtag",
"length": 4,
"offset": 178
},
{
"tag": "python",
"type": "hashtag",
"length": 7,
"offset": 183
},
{
"tag": "sdk",
"type": "hashtag",
"length": 4,
"offset": 191
}],
"author": {
"id": "c44d69c2-d35a-4ec0-8128-8e59e41053ba",
"username": "gam5510",
"displayName": "Фазлиддин",
"avatar": "👨💻",
"verified": false,
"pin": {
"slug": "kirill67_202602_infected",
"name": "Переболел вирусом Кирилл-67",
"description": "Вирус (Февраль, 2026г)"
}
},
"attachments": [],
"likesCount": 8,
"commentsCount": 0,
"repostsCount": 2,
"viewsCount": 40,
"isLiked": true,
"isViewed": true,
"isReposted": false,
"isOwner": true,
"createdAt": "2026-01-31T06:20:32.245Z",
"originalPost": null,
"wallRecipientId": null,
"wallRecipient": null,
"poll": null,
"isPinned": true
},
Поля объекта Post
| Поле | Тип | Описание |
|---|---|---|
| id | str | ID поста |
| content | str | Текст поста |
| spans | list[Span] | Форматирование (bold, hashtag и т.д.) |
| likes_count | int | Количество лайков |
| comments_count | int | Количество комментариев |
| reposts_count | int | Количество репостов |
| views_count | int | Количество просмотров |
| is_liked | bool | Лайкнул ли текущий пользователь |
| is_owner | bool | Является ли пользователь владельцем |
| is_pinned | bool | Закреплён ли пост |
| author | UserLite | Автор поста |
| poll | poll | Опрос (если есть) |
| dominant_emoji | str | доминирующе эмодзи |
Пример вывода всех значений
Теперь код, который красиво выводит всё:
post = client.get_post("1e919573-cb93-42c6-b9c1-7d35d9484d9e")
print("ID:", post.id)
print("Текст:", post.content)
print("Создан:", post.created_at)
print("Лайки:", post.likes_count)
print("Комментарии:", post.comments_count)
print("Репосты:", post.reposts_count)
print("Просмотры:", post.views_count)
print("Лайкнут:", post.is_liked)
print("Просмотрен:", post.is_viewed)
print("Репостнут:", post.is_reposted)
print("Владелец:", post.is_owner)
print("Закреплён:", post.is_pinned)
print("Доминирующе эмодзи:", post.dominant_emoji)
if post.author:
print("\nАвтор:")
print(" ID:", post.author.id)
print(" Username:", post.author.username)
print(" Display name:", post.author.display_name)
print(" Verified:", post.author.verified)
if post.author.pin:
print("\nПин:")
print(" Сленг: ", post.author.pin.slug)
print(" Название: ", post.author.pin.name)
print(" Описание: ", post.author.pin.description)
if post.spans:
print("\nSpans:")
for span in post.spans:
print(f" Тип: {span.type}, Offset: {span.offset}, Length: {span.length}, Tag: {span.tag}")
if post.attachments:
print("\nМедиа:")
for attachment in post.attachments:
print(" ID:", attachment.id)
if post.poll:
print("\nОпрос:")
print(" Вопрос:", post.poll.question)
print(" Всего голосов:", post.poll.total_votes)
print(" Проголосовал:", post.poll.has_voted)
for option in post.poll.options:
print(f" Вариант: {option.text} (голосов: {option.votes_count})")