chore: update version; move scripts into examples folder
This commit is contained in:
19
README.md
19
README.md
@@ -18,10 +18,25 @@ c = ITDClient('TOKEN', 'refresh_token=...; __ddg1_=...; __ddgid_=...; is_auth=1;
|
||||
|
||||
print(c.get_me())
|
||||
```
|
||||
|
||||
<!--
|
||||
> [!NOTE]
|
||||
> Берите куки из запроса /auth/refresh. В остальных запросах нету refresh_token
|
||||
> 
|
||||
>  -->
|
||||
|
||||
## Получение cookies
|
||||
|
||||
Для получения access_token требуются cookies с `refresh_token`. Как их получить:
|
||||
|
||||
1. Откройте [итд.com](https://xn--d1ah4a.com) в браузере
|
||||
2. Откройте DevTools (F12)
|
||||
3. Перейдите на вкладку **Network**
|
||||
4. Обновите страницу
|
||||
5. Найдите запрос к `/auth/refresh`
|
||||
6. Скопируйте значение **Cookie** из Request Headers
|
||||
> Пример: `refresh_token=123123A67BCdEfGG; is_auth=1`
|
||||
> В cookies также могут присутствовать значения типа `__ddgX__` (DDoS-Guard cookies) или `_ym_XXXX` (`X` - любое число или буква). Они необязательные и их наличие не влияет на результат
|
||||
|
||||

|
||||
|
||||
---
|
||||
### Скрипт на обновление имени
|
||||
|
||||
@@ -2,62 +2,6 @@
|
||||
|
||||
Эта папка содержит примеры использования ITD SDK для различных сценариев.
|
||||
|
||||
## Структура
|
||||
|
||||
```
|
||||
examples/
|
||||
├── README.md # Этот файл
|
||||
└── stream/ # Примеры работы с SSE потоком уведомлений
|
||||
├── basic_stream.py
|
||||
├── stop_stream.py
|
||||
├── filter_notifications.py
|
||||
└── notification_logger.py
|
||||
```
|
||||
|
||||
## Подготовка
|
||||
|
||||
Перед запуском примеров установите зависимости:
|
||||
|
||||
```bash
|
||||
pip install -r ../requirements.txt
|
||||
```
|
||||
|
||||
## Получение cookies
|
||||
|
||||
Все примеры требуют cookies с `refresh_token`. Как их получить:
|
||||
|
||||
1. Откройте [итд.com](https://xn--d1ah4a.com) в браузере
|
||||
2. Откройте DevTools (F12)
|
||||
3. Перейдите на вкладку **Network**
|
||||
4. Найдите запрос к `/auth/refresh`
|
||||
5. Скопируйте значение **Cookie** из Request Headers
|
||||
6. Формат: `refresh_token=...; __ddg1_=...; is_auth=1`
|
||||
|
||||
См. `cookie-screen.png` в корне проекта для примера.
|
||||
|
||||
---
|
||||
|
||||
## Stream - Прослушивание уведомлений
|
||||
|
||||
Примеры работы с SSE потоком уведомлений в реальном времени.
|
||||
|
||||
📁 **Папка:** `stream/`
|
||||
📖 **Документация:** [stream/README.md](stream/README.md)
|
||||
|
||||
**Примеры:**
|
||||
- `basic_stream.py` - Базовое прослушивание всех уведомлений
|
||||
- `stop_stream.py` - Программная остановка потока
|
||||
- `filter_notifications.py` - Фильтрация по типу уведомлений
|
||||
- `notification_logger.py` - Логирование в JSON файл
|
||||
|
||||
**Быстрый старт:**
|
||||
```bash
|
||||
cd stream
|
||||
python basic_stream.py
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Дополнительная информация
|
||||
|
||||
- [Основной README](../README.md) - Документация по всему SDK
|
||||
|
||||
@@ -5,7 +5,7 @@ import sys
|
||||
from pathlib import Path
|
||||
sys.path.insert(0, str(Path(__file__).parent.parent.parent))
|
||||
|
||||
from itd import ITDClient, StreamConnect, StreamNotification
|
||||
from itd import ITDClient, StreamConnect
|
||||
|
||||
def main():
|
||||
cookies = 'YOUR_COOKIES_HERE'
|
||||
|
||||
@@ -5,7 +5,7 @@ import sys
|
||||
from pathlib import Path
|
||||
sys.path.insert(0, str(Path(__file__).parent.parent.parent))
|
||||
|
||||
from itd import ITDClient, StreamConnect, StreamNotification
|
||||
from itd import ITDClient, StreamConnect
|
||||
from itd.enums import NotificationType
|
||||
|
||||
def main():
|
||||
@@ -18,11 +18,10 @@ def main():
|
||||
|
||||
client = ITDClient(cookies=cookies)
|
||||
|
||||
# Настройка: какие типы уведомлений показывать
|
||||
SHOW_TYPES = {
|
||||
NotificationType.LIKE,
|
||||
NotificationType.FOLLOW,
|
||||
NotificationType.COMMENT,
|
||||
NotificationType.COMMENT
|
||||
}
|
||||
|
||||
print('-- Подключение к SSE...')
|
||||
|
||||
@@ -5,7 +5,7 @@ import sys
|
||||
from pathlib import Path
|
||||
sys.path.insert(0, str(Path(__file__).parent.parent.parent))
|
||||
|
||||
from itd import ITDClient, StreamConnect, StreamNotification
|
||||
from itd import ITDClient, StreamConnect
|
||||
from datetime import datetime
|
||||
import json
|
||||
|
||||
|
||||
@@ -6,8 +6,7 @@ from pathlib import Path
|
||||
sys.path.insert(0, str(Path(__file__).parent.parent.parent))
|
||||
|
||||
import threading
|
||||
import time
|
||||
from itd import ITDClient, StreamConnect, StreamNotification
|
||||
from itd import ITDClient, StreamConnect
|
||||
|
||||
def main():
|
||||
cookies = 'YOUR_COOKIES_HERE'
|
||||
@@ -18,7 +17,6 @@ def main():
|
||||
|
||||
client = ITDClient(cookies=cookies)
|
||||
|
||||
# Функция для прослушивания в отдельном потоке
|
||||
def listen():
|
||||
print('! Начинаем прослушивание...')
|
||||
try:
|
||||
@@ -30,7 +28,6 @@ def main():
|
||||
except Exception as e:
|
||||
print(f'! Ошибка: {e}')
|
||||
|
||||
# В отдельном потоке
|
||||
thread = threading.Thread(target=listen, daemon=True)
|
||||
thread.start()
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "itd-sdk"
|
||||
version = "1.1.0"
|
||||
version = "1.2.0"
|
||||
description = "ITD client for python"
|
||||
readme = "README.md"
|
||||
authors = [
|
||||
|
||||
Reference in New Issue
Block a user