Scratch2py
Scratch2py or S2py is a easy to use, versatile tool to communicate with the Scratch API Based of Scratch2py
Installation
Run this command in your terminal as ONE command.
pip install scratch2py && pip install --force-reinstall websocket-client
Usage
Import scratch2py in like this:
from scratch2py import Scratch2Py
s2py = Scratch2Py('username', 'password')
# Imports s2py and initializes a new s2py object. Enter your Scratch MIT credentials to create a connection with the API.
user class
user = s2py.user('username')
user.exists()
# Checks if a user exists. Returns true or false
user.getMessagesCount()
# Gets the number of messages someone has.
user.getMessages()
# Gets your messages and returns the JSON.
user.getStatus()
# Gets the 'about me' section of a users.
user.getBio()
# Gets the 'What I'm Working On' section of a users profile.
user.getProjects()
# Gets the projects that a user has.
userSession class
user = s2py.userSession('username')
# Creates a userSession class.
user.followUser()
# Follows the user mentioned in the userSession constructor.
user.unfollowUser('thatotheruser')
# Unfollows the user mentioned in the userSession constructor.
user.toggleCommenting()
# Toggles commenting on your profile (On/Off)
user.postComment('text','parent_id (OPTIONAL', 'commentee_id (OPTIONAL)'))
# Posts a comment on the users profile
studioSession class
studio = s2py.studioSession('sid')
studio.inviteCurator('person')
# Invites a curator to a studio
studio.addStudioProject('pid')
# Adds a project to a studio
studio.postComment('Text', 'parentid', 'commentee_id')
studio.getComments()
# Gets the comments from a studio
studio.follow()
# Follows a studio
studio.unfollow()
# Unfollows a studio
project class
project = s2py.project('id')
project.getStats('loves/faves/remixes/views')
# Gets the stats of a project
project.getComments()
# Gets the comments of a project
project.getInfo()
# Gets the info of a project
project.fetchAssets(type='img')
# Fetches assets of a project. Type is img by default, can be img or snd. snd will fetch sound files from the project.
projectSession class
project = s2py.projectSession('id')
# Starts a project session to the specific project
project.share()
# Shares a project
project.unshare()
# Unshares a project
project.favorite()
# Favorites a project
project.unfavorite()
# Unfavorites a project
project.love()
# Loves a project
project.unlove()
# Unloves a project
scratchConnect Class
Using the module for cloud on scratch.
cloudproject = s2py.scratchConnect('Project_Id')
# Creates a new connection to a Scratch project.
cloudproject.setCloudVar('CloudVar', 'Value')
# Sets a value to a cloud variable. Don't add the cloud symbol.
cloudproject.readCloudVar('variable name', 'Limit(optional)')
# Gets the value of a cloud variable. Limit is when the program should stop looking for the value. Limit is 1000 by default.
turbowarpConnect class
turbowarp = s2py.turbowarpConnect('project_id')
# Creates a new connection to a Turbowarp project.
turbowarp.setCloudVar('CloudVar', 'Value')
# Sets a value to a cloud variable. Don't add the cloud symbol.
turbowarp.readTurbowarpVar('variable name')
# Gets the value of a cloud variable.
cloudDatabase class
db = s2py.cloudDatabase('Project id')
# Creates a new database that will detect messages on a certain project id
db.startLoop()
# Starts a new loop for the database.
Refer here for more info
Encode/decode functions
s2py.encode('value')
# Encodes a value. Scratch version available on my Scratch profile
s2py.decode('value')
# Decodes a value. To be used to communicate to and from a Scratch project.
The End
That's it! Contact my on my Scratch profile