Skip to main content

Python SDK for ИТД.com API

Project description

ITDpy

Python SDK для социальной сети ITD. Упрощает работу с SDK API и позволяет быстро писать ботов и автоматизации.

⚠️ Библиотека ориентирована на безопасное и ответственное использование.

Установка pip

pip install itdpy

Через git

git clone https://github.com/Gam5510/ITDpy
cd itdpy
pip install -r requirements.txt
pip install -e .

Быстрый старт

Blockquote Получение токена Как получить токен

from  itdpy.client  import  ITDClient
from  itdpy.auth  import  AuthManager
from  itdpy.api  import  get_me

client  =  ITDClient(refresh_token="Ваш refresh token")

auth  =  AuthManager(client)
auth.refresh_access_token()
  
me  =  get_me(client)
print(me.id)
print(me.username)

Скрипт на обновление имени

from  itdpy.client  import  ITDClient
from  itdpy.auth  import  AuthManager
from  itdpy.api  import  update_profile
from  datetime  import  datetime
import  time

client = ITDClient(refresh_token="Ваш_токен")
auth = AuthManager(client)

auth.refresh_access_token()

while  True:
	update_profile(client,  display_name=f"Фазлиддин |{datetime.now().strftime('%m.%d %H:%M:%S')}|")
	time.sleep(1)

Скрипт на обновление баннера

from  itdpy.client  import  ITDClient
from  itdpy.auth  import  AuthManager
from  itdpy.api  import  update_profile, upload_file
from  datetime  import  datetime
import  time

client  =  ITDClient(refresh_token="Ваш_токен")
auth  =  AuthManager(client)
auth.refresh_access_token()

file  =  upload_file(client,  "matrix-rain-effect-animation-photoshop-editor.gif")
print(file.id)
update  =  update_profile(client,  banner_id=file.id)
print(update.banner)

Костомные запросы

✅ Базовый пример кастомного GET

response = client.get("/api/users/me")
data = response.json() 
print(data)

Можно добавить любой эндпоинт


✅ POST с JSON

response = client.post( 
		"/api/posts",
    json={ "content": "Привет из кастомного запроса" }
) 
print(response.status_code) 
print(response.json())

✅ PUT / PATCH

response = client.patch( "/api/profile",
    json={ "displayName": "Фазлиддин 😎" }
)

✅ DELETE

client.delete("/api/posts/POST_ID") 

✅ Передача query-параметров

response = client.get( "/api/posts",
    params={ "limit": 50, "sort": "popular" }
)

Планы

  • Асинхронная версия библиотеки (aioitd)
  • Улучшенная обработка и форматирование ошибок
  • Логирование (через logging)
  • Расширение объектной модели (Post, Comment, User и др.)
  • Дополнительные API-эндпоинты по мере появления
  • Улучшение документации и примеров

Прочее

Проект активно развивается. Если у вас есть идеи или предложения — создавайте issue или pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

itdpy-0.2.0.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

itdpy-0.2.0-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file itdpy-0.2.0.tar.gz.

File metadata

  • Download URL: itdpy-0.2.0.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for itdpy-0.2.0.tar.gz
Algorithm Hash digest
SHA256 504dbb3f55408387cafe0d01e9dfeae6fa28b47051a0f412873a5505d2df2b36
MD5 16508c78f0431a9a4c1dfedf82687170
BLAKE2b-256 d74bebf190f6355301822dbe8c35a5a0bc948e80f8c69370d85d9ce7a043dffa

See more details on using hashes here.

File details

Details for the file itdpy-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: itdpy-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 15.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for itdpy-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8ec0ed3142265eaaac6f18f8106cf8688b31af7b46d20cc2ca5ed0f71c9b1f45
MD5 f77b8a86824ec4a5db19b8c574cdcaa2
BLAKE2b-256 c93a25404e33c3e1450c389eb680c240c3716a6575d0e8def0535cce40da7c50

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page