Skip to main content

Python to Scratch API connector

Project description

Scratch2py

Scratch2py or S2py is a easy to use, versatile tool to communicate with the Scratch API Based of scratchclient by Raihan142857

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')

user.followUser('otheruser')
# Follows a user
user.unfollowUser('thatotheruser')
# Unfollows a user
user.toggleCommenting()
# Toggles commenting on your profile (On/Off)
user.postComment('text','user','parent_id (OPTIONAL', 'commentee_id (OPTIONAL)'))
# Posts a comment on a 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

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

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

scratch2py-0.5.8.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

scratch2py-0.5.8-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file scratch2py-0.5.8.tar.gz.

File metadata

  • Download URL: scratch2py-0.5.8.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for scratch2py-0.5.8.tar.gz
Algorithm Hash digest
SHA256 5389a086e527d0600058a33168921797d5cd2b28cc2f154f0ea408e2548a524c
MD5 a0e3d2fe778513821fb8b2e3811adfaa
BLAKE2b-256 c66cf3ac42def7e6adc84556f12cc020cba5470bb35e2eaf5fad0aae10828a49

See more details on using hashes here.

File details

Details for the file scratch2py-0.5.8-py3-none-any.whl.

File metadata

  • Download URL: scratch2py-0.5.8-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for scratch2py-0.5.8-py3-none-any.whl
Algorithm Hash digest
SHA256 70ddebd81885c51a71d8fdf4e62352d3c962842babbd38441c42d343e261c3d2
MD5 9a846ad2687ebedd39bc912d9078cdac
BLAKE2b-256 93d9f23ad42fdc9b888aa505d1dde1cbd92405185e40b7bb7d103b273d6cc74c

See more details on using hashes here.

Supported by

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