Metadata-Version: 2.1
Name: scratchplus
Version: 1.6.2
Summary: API wrapper for scratch
Home-page: https://github.com/noverd/ScratchPlus
Author: Gagarinten(Noverdo)
Author-email: thefinalspacestudio@gmail.com
License: UNKNOWN
Description: # ENG
        # Scratch Plus
        ## What is ScratchPlus?
        **ScratchPlus** is 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 forums
        ## Advantages over analogue (ScratchClient)
        - [👍] Ability to automatically encode and decode cloud data
        - [👍] Read profile comments by parsing
        
        ## Libraries or APIs used:
        - [Requests](github.com/psf/requests) - Library For convenient work with the HTTP protocol.
        - [ScratchDB](https://scratchdb.lefty.one/) - API For working with Scratch forums.
        - [IsScratcher](https://github.com/hello-smile6/isScratcher) - API To check Scratcher status
        
        ## Installation
        To install, you can use the command
        ```pip install scratchplus```
        ## Quick Start
        ```python
        from scratchplus import Session # import Session
        ses = Session("username_on_scratch", "password") # log in
        user = ses.get_user("gagarintentoper") # get user
        user.post_comment("Hello Scratch+ devloper!") # post the comment
        ```
        ## Documentation
        ### Account connection
        To work with most of the API, you need to log in (see below)
        ```python
        from scratchplus import Session
        account = Session("username_on_scratch", "password")
        ```
        ### Get Methods
        After authorization, we can get an object from API for further work with it
        This will list all Get Zaros
        #### get_user
        ```python
        account.get_user("username")
        ```
        The method returns an object of class YourUser or AnotherUser
        #### get_project
        ```python
        account.get_project(22814354) # project ID as argument
        ```
        The method returns an object of class YourProject or AnotherProject
        
        #### USER
        There will be documentation on the User class
        ```python
        print(user.id) # Print user id
        print(user.username) # Print username
        print(user.joined_timestamp) # Prints the date the user joined the scratch
        print(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 scratch
        print(user.get_comments(page=1)) # Print all comments from a page on the user's profile
        user.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 into
        user.follow() # Follow user
        user.unfollow() # Unfollow ser
        user.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)
        ```
        
        ## Thanks
        - To github user Quatum-Codes for the comment parser
        
        # RUS
        # ScratchPlus
        ## Что такое ScratchPlus?
        **ScratchPlus** - это библиотека для работы со Scratch Api для Python :snake:.
        ## Что может наш модуль?
        - [✔️] Работать с данными скретча
        - [✔️] Писать и читать комментарии 
        - [✔️] Работать с облачными проектами на Scratch
        - [❌] Регестрироватся на Scratch
        - [✔️] Читать форумы и получать данные о постах
        - [✔️] Кодирование числовых облачных данных скретча в обычные строки
        - [❌] Постить на форумах
        ## Преимущества перед аналогом (ScratchClient)
        - [👍] Возможность автоматический кодировать и декодировать облачные данные  
        - [👍] Чтение комментариев профиля путём парсинга
        
        ## Используймые библеотеки  или API:
        - [Requests](github.com/psf/requests) - Библеотека Для удобной работы с протоколом HTTP.
        - [ScratchDB](https://scratchdb.lefty.one/) - API Для работы с форумами на Scratch.
        - [IsScratcher](https://github.com/hello-smile6/isScratcher) - API Для проверки статуса Скретчера
        
        ## Установка
        Для установки можно возпользоваться командой
        ```pip install scratchplus```
        ## Начало
        Первым Quick Start у нас будет скрипт, для оставления комментариев на профиле пользователя
        ```python
        from scratchplus import Session # импротируем сессию
        ses = Session("username_on_scratch", "password") # входим в аккаунт
        user = ses.get_user("gagarintentoper") # получаем пользователя
        user.post_comment("Привет Scratch+ разработчик!") # оставляем комментарий
        ```
        ## Документация
        ### Подключение к аккаунту
        Для работы с большей части API нужно авторизоваться (см. ниже)
        ```python
        from scratchplus import Session
        account = Session("username_on_scratch", "password")
        ```
        ### Методы Get
        После авторизации, мы можем получить объект из APi для далнейшей работы с ним
        Здесь будет приведёт список всех Get Заросов 
        #### get_user
        ```python
        account.get_user("username")
        ```
        Метод возращает объект класса YourUser или AnotherUser 
        #### get_project
        ```python
        account.get_project(22814354) # ID проекта как аргумент
        ```
        Метод возращает объект класса YourProject или AnotherProject 
        
        #### USER
        Здесь будет документация по классу User
        ```python
        print(user.id) # Выведет user id
        print(user.username) # Выведет username
        print(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()) # Выведет количество сообщений в скретче у user
        print(user.get_comments(page=1)) # Выведет все комментарии со страницы на профиле user
        user.post_comment(content, parent_id="", commentee_id="") # Оставит комментарий на профиле user. В параметр parent_id id комментария, под которым вы хотите оставить новый. 
        user.toggle_commenting() # Включает/Выключает комментирование на профиле user, работает только на профиле аккаунта, в который вы вошли
        user.follow() # Подписываеться на user
        user.unfollow() # Отписываеться от гser
        user.report(field) # Посылает репорт на user. Field - поле выбора причины репорта (Username/Icon/About Me/What I'm Working On) 
        ```
        ## Спасибо
        - Пользователю github Quatum-Codes за парсер комментариев
        
Platform: UNKNOWN
Description-Content-Type: text/markdown
