Package: scratchplus
ENGScratch PlusWhat is ScratchPlus?ScratchPlusis a Scratch API library for Python :snake:.What can our module do?[✔️] Work with scratch data[✔️] Write and read comments[✔️] Work with cloud projects on Scratch[❌] Register on Scratch[✔️] Read forums and get post data[✔️] Encode scratch numeric cloud data into normal strings[❌] Post on forumsAdvantages over analogue (ScratchClient)[👍] Ability to automatically encode and decode cloud data[👍] Read profile comments by parsingLibraries or APIs used:Requests- Library For convenient work with the HTTP protocol.ScratchDB- API For working with Scratch forums.IsScratcher- API To check Scratcher statusInstallationTo install, you can use the commandpip install scratchplusQuick StartfromscratchplusimportSession# import Sessionses=Session("username_on_scratch","password")# log inuser=ses.get_user("gagarintentoper")# get useruser.post_comment("Hello Scratch+ devloper!")# post the commentDocumentationAccount connectionTo work with most of the API, you need to log in (see below)fromscratchplusimportSessionaccount=Session("username_on_scratch","password")Get MethodsAfter authorization, we can get an object from API for further work with it
This will list all Get Zarosget_useraccount.get_user("username")The method returns an object of class YourUser or AnotherUserget_projectaccount.get_project(22814354)# project ID as argumentThe method returns an object of class YourProject or AnotherProjectUSERThere will be documentation on the User classprint(user.id)# Print user idprint(user.username)# Print usernameprint(user.joined_timestamp)# Prints the date the user joined the scratchprint(user.scratchteam)# Print if user belongs to ScratchTeam (True / False)print(user.get_projects(all=False,limit=20,offset=0))# Lists projects created by user. The all flag is needed if you want to get all projects.print(user.get_curating(all=False,limit=20,offset=0))# Lists the studios the user is curating. The all flag is needed if you want to get all the studios.print(user.get_favorites(all=False,limit=20,offset=0))# List favorite projects. The all flag is needed if you want to get all featured projects.print(user.get_followers(all=False,limit=20,offset=0))# Lists followers of user user. The all flag is needed if you want to get all subscribers.print(user.get_following(all=False,limit=20,offset=0))# Print a list of users that user has followed. The all flag is needed if you want to get all user subscriptions.print(user.get_message_count())# Prints the number of messages in the user's scratchprint(user.get_comments(page=1))# Print all comments from a page on the user's profileuser.post_comment(content,parent_id="",commentee_id="")# Post a comment on user's profile. In the parent_id parameter, the id of the comment under which you want to leave a new one.user.toggle_commenting()# Turns on/off commenting on the user profile, only works on the profile of the account you are logged intouser.follow()# Follow useruser.unfollow()# Unfollow seruser.report(field)# Sends a report to user. Field - field for selecting the reason for the report (Username/Icon/About Me/What I'm Working On)ThanksTo github user Quatum-Codes for the comment parserRUSScratchPlusЧто такое ScratchPlus?ScratchPlus- это библиотека для работы со Scratch Api для Python :snake:.Что может наш модуль?[✔️] Работать с данными скретча[✔️] Писать и читать комментарии[✔️] Работать с облачными проектами на Scratch[❌] Регестрироватся на Scratch[✔️] Читать форумы и получать данные о постах[✔️] Кодирование числовых облачных данных скретча в обычные строки[❌] Постить на форумахПреимущества перед аналогом (ScratchClient)[👍] Возможность автоматический кодировать и декодировать облачные данные[👍] Чтение комментариев профиля путём парсингаИспользуймые библеотеки  или API:Requests- Библеотека Для удобной работы с протоколом HTTP.ScratchDB- API Для работы с форумами на Scratch.IsScratcher- API Для проверки статуса СкретчераУстановкаДля установки можно возпользоваться командойpip install scratchplusНачалоПервым Quick Start у нас будет скрипт, для оставления комментариев на профиле пользователяfromscratchplusimportSession# импротируем сессиюses=Session("username_on_scratch","password")# входим в аккаунтuser=ses.get_user("gagarintentoper")# получаем пользователяuser.post_comment("Привет Scratch+ разработчик!")# оставляем комментарийДокументацияПодключение к аккаунтуДля работы с большей части API нужно авторизоваться (см. ниже)fromscratchplusimportSessionaccount=Session("username_on_scratch","password")Методы GetПосле авторизации, мы можем получить объект из APi для далнейшей работы с ним
Здесь будет приведёт список всех Get Заросовget_useraccount.get_user("username")Метод возращает объект класса YourUser или AnotherUserget_projectaccount.get_project(22814354)# ID проекта как аргументМетод возращает объект класса YourProject или AnotherProjectUSERЗдесь будет документация по классу Userprint(user.id)# Выведет user idprint(user.username)# Выведет usernameprint(user.joined_timestamp)# Выведет user дата присоединения к скретчуprint(user.scratchteam)# Выведет, относиться ли пользователь к ScratchTeam (True / False)print(user.get_projects(all=False,limit=20,offset=0))# Выведет список проектов, созданных user. Флаг all нужен, если вы хотите получить все проекты.print(user.get_curating(all=False,limit=20,offset=0))# Выведет список студий, которые курирует user. Флаг all нужен, если вы хотите получить все студии.print(user.get_favorites(all=False,limit=20,offset=0))# Выведет список избранных проектов. Флаг all нужен, если вы хотите получить все избранные проекты.print(user.get_followers(all=False,limit=20,offset=0))# Выведет список подписчиков пользователя user. Флаг all нужен, если вы хотите получить всех подписчиков.print(user.get_following(all=False,limit=20,offset=0))# Выведет список пользователей, на которых подписался user. Флаг all нужен, если вы хотите получить все подписки к пользователям.print(user.get_message_count())# Выведет количество сообщений в скретче у userprint(user.get_comments(page=1))# Выведет все комментарии со страницы на профиле useruser.post_comment(content,parent_id="",commentee_id="")# Оставит комментарий на профиле user. В параметр parent_id id комментария, под которым вы хотите оставить новый.user.toggle_commenting()# Включает/Выключает комментирование на профиле user, работает только на профиле аккаунта, в который вы вошлиuser.follow()# Подписываеться на useruser.unfollow()# Отписываеться от гseruser.report(field)# Посылает репорт на user. Field - поле выбора причины репорта (Username/Icon/About Me/What I'm Working On)СпасибоПользователю github Quatum-Codes за парсер комментариев