Материал из Скретч Вики

Веник.svg Эта статья или раздел может иметь содержание, не соответствующее стандартам Скретч Вики. Пожалуйста, улучшите её в соответствии с правилами и рекомендациями по редактированию.

ScratchClient — это библиотека для python, которая даёт возможность удобно взаимодействовать со Scratch Api. Она может делать почти всё, что присутствует в scratch api.

Значок «важно».png Внимание! Использовать API Scratch'а для нарушения правил Scratch и/или условий использования Scratch (например, спам-рассылка или массрепорт) запрещено! Вы можете получить бан за злоупотребление API не только по аккаунту, но и по IP-адресу.

Функционал

Данная библиотека позволяет:

  • Изменять облачные переменные;
  • Читать облачные переменные;
  • Читать комментарии на проекта, у профилей пользователей, в студиях;
  • Оставлять комментарии на проектах, у пользователей и в студиях;
  • Жаловаться на пользователей, студии, проекты;
  • Подписываться, лайкать и добавлять проекты в избранное, подписываться на студии и делать все те же действия наоборот;
  • Читать сообщения.

Установка Библиотеки

Команда для установки библиотеки ниже

 pip install scratchclient 

Подключение пользователя

 from scratchclient import ScratchSession  
 s = ScratchSession("имя на скретче", "пароль на скретче")  
 user = s.get_user("user")  
 user.post_comment("Ура! Это Пример со скретч вики! Мы отправили тебе его, автор статьи!")

В первой строке мы импортируем библиотеку, а из неё ScratchSession. ScratchSession — это сессия входа на скретч для работы с api. Вторая строка - мы создаём класс ScratchSession в переменной s ScratchSession осуществляет вход в аккаунт скретч. Что бы она вошла нужно предоставить данные(username, password) В третей строке мы используем s.get_user(), как мы разобрали в прошлой строке s - это ScratchSession. Она имеет функцию получения get_user() Её синтаксис:

s.get_user("Имя пользователя")

После получения пользователя мы задаём переменную user, где будет храниться нужный нам пользователь. Далее мы используем функцию user.post_comment("Тут комментарий"), она оставляет комментарий у user, проекта или студии, но в ней (до точки) должен передаваться объект (можно было и s.get_user("U Ser").post_comment("U is U Ser")), объект это user, либо project, либо studio.

Работа с переменными

 from scratchclient import ScratchSession
 ass = ScratchSession("Имя аккаунта", "Пароль")
 connection = ass.create_cloud_connection(id проекта)
 connection.set_cloud_variable("имя переменной", value) #где value является новым значением переменной

Сначала, мы подключились к пользователю, введя его имя и пароль. Далее, мы подключились к проекту по его id, и наконец, изменили значение переменной. Следует отметить, что такой способ изменения переменных работает только с облачными переменными

Комментарии

session.get_project(ID проекта).post_comment("Комментарий") # опубликовать комментарий в проекте
session.get_studio(ID студии).post_comment("Комментарий") # опубликовать комментарий в студии
session.get_project(ID проекта).get_comments()[0].content # Получить комментарии

Проекты

session.get_project(ID проекта).love() # поставить лайк
session.get_project(ID проекта).favorite() # поставить звезду
session.get_project(ID проекта).unlove() # убрать лайк
session.get_project(ID проекта).unfavorite() # убрать звезду
session.get_project(ID проекта).description # получить описание проекта
session.get_project(ID проекта).instructions # получить инструкции проекта
session.get_project(ID проекта).title # получить название проекта
session.get_project(ID проекта).love_count # получить кол-во лайков
session.get_project(ID проекта).favorite_count # получить кол-во звёзд
session.get_project(ID проекта).remix_count # получить кол-во ремиксов
session.get_project(ID проекта).view_count # получить кол-во просмотров
session.get_project(ID проекта).comments_allowed # проверка на разрешение комментирования проекта
session.get_project(ID проекта).author.username # получить имя пользователя создателя проекта

Студии

session.get_studio(STUDIOIDHERE).description # получить описание студии

Пользователь

session.get_user(USERNAMEHERE).get_message_count() # получить кол-во сообщений пользователя
session.get_user(USERNAMEHERE).follow() # подписаться на пользователя
session.get_user(USERNAMEHERE).unfollow() # отписаться от пользователя
session.get_user(USERNAMEHERE).profile.bio # получить информацию пользователя "О себе"
session.get_user(USERNAMEHERE).get_followers()[0].username # получить список подписчиков пользователя
session.get_user(USERNAMEHERE).joined_timestamp # получить дату регистрации пользователя
session.get_user(USERNAMEHERE).scratchteam # получить булевое значение (True/False), является ли пользователь членом команды Скретч

См. Также

Ссылки

Cookie-файлы помогают нам предоставлять наши услуги. Используя наши сервисы, вы соглашаетесь с использованием cookie-файлов.