Discuss Scratch

Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Sorry. I asked the Scratch Team to close the old topic because that topic was made by @-BlazingWind- and now they are banned. I can't edit the out-dated first post. So, I created this new topic instead!

ScratchConnect v5.0



Python Library to connect Scratch API and much more.

This library can show the statistics of Users, Projects, Studios, Forums and also connect and set cloud variables of a project!

This library needs a Scratch account. Visit the Scratch Website: https://scratch.mit.edu/ You also need to have the Python programming language installed on your computer.

You need basic knowledge of Python. Using this library without the knowledge can be risky.


Documentation:

Documentation can be found at:


Making it work on Replit and other online IDEs:

Visit the link for the docs and the way to make it work on Replit: https://github.com/Sid72020123/scratchconnect/#using-scratchconnect-in-online-ides-like-replit


Contributors:

View all the contributors on Github: https://github.com/Sid72020123/scratchconnect/#contributors

Last edited by Sid72020123 (Oct. 16, 2023 05:46:45)

Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

New CloudRequests feature coming soon! This new version will include faster argument loading and encode/deocde the thumbnails of studios and projects!
Knightbot63
Scratcher
1000+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Sid72020123 wrote:

(#2)
New CloudRequests feature coming soon! This new version will include faster argument loading and encode/deocde the thumbnails of studios and projects!
That'll be cool.
Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Knightbot63 wrote:

Sid72020123 wrote:

(#2)
New CloudRequests feature coming soon! This new version will include faster argument loading and encode/deocde the thumbnails of studios and projects!
That'll be cool.
I tested some things and found that the average request time is between 5-15 seconds and depends very much on the length of the data sent.

Although it is not as fast as @TimMcCool's ScratchAttach, it still has no data loss! I tried loading more than 150K chars and there was no data loss at all!
AXEstudios
Scratcher
100+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

yo this is really cool ⭐⭐⭐⭐⭐
Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

AXEstudios wrote:

yo this is really cool ⭐⭐⭐⭐⭐
Thank you!
Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Update v4.5

Added new features:

  • Made the cloud requests feature faster
  • Added some functions to download and encode/decode images of studios and projects and also from URLs
MagicCrayon9342
Scratcher
1000+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

either the OP was updated or there were 4 updates in a one day period
Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

To test the features of the new version, I created a project to show daily APOD (Astronomy Picture Of the Day) using NASA's API.

See it here: https://scratch.mit.edu/projects/802400743/
Basilikos
Scratcher
1000+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

SID HELP US


Last edited by Basilikos (Feb. 12, 2023 17:54:33)

Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Basilikos wrote:

SID HELP US


Oh! You are using the “user” variable to login to your Scratch account and the “login” variable to connect the user!

You can fix the error by changing the “user” variable with “login” at line 6.
Knightbot63
Scratcher
1000+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

I have a question.

In the future, will it be possible to:
  • Do social Interactions besides commenting, replying, following, changing the PFP
and
  • Set the users About Me and WIWO using replit?
If the commenting, replying and following is going to using a proxy in the future for replit, I suggest not as spambots can generate more in case you didn't know.
Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Knightbot63 wrote:

  • Do social Interactions besides commenting, replying, following, changing the PFP

Yes. Maybe. If the Scratch Team allows us to do that and I find a valid API endpoint for that…

Knightbot63 wrote:

  • Set the users About Me and WIWO using replit?

Maybe that won't be possible as I want to keep your data safe and not send your login data to a proxy (Even if it made by me!)

Knightbot63 wrote:

If the commenting, replying and following is going to using a proxy in the future for replit, I suggest not as spambots can generate more in case you didn't know.

Yes. But the spambots generated can be dangerous. I am not going to add that feature.


BTW You can copy the ScratchConnect code and edit the file: https://github.com/Sid72020123/scratchconnect/blob/main/scratchconnect/scOnlineIDE.py#L1

You can add the code for “post” type of request yourself. It is the same as the “get” request but only you need to pass some headers…

Also, If you want to host your own proxy, the source code of the proxy which the library uses is here.

You need to edit that code and add a method to receive “post” and “put” type of requests. After that, host that on server-less hosting providers like https://deta.sh (The proxy for ScratchConnect is hosted here!)

Later, you can upload your own new-made code to replit and then use it!

Sorry. I can't give you the full code as I'm busy and the spammers might see it. You need to code all this yourself!

Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Update v4.5.1

Fixed mistakes in the documentation and fixed some bugs!

We have a new Contributor! It's PPPDUD
Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Oops! I found a bug here: https://github.com/Sid72020123/scratchconnect/blob/main/scratchconnect/scOnlineIDE.py#L17

Because of it, the headers of those requests are changed which have the URL not starting with “scratch.mit.edu”. This can affect the requests which is not the Scratch API when the program is ran on replit!

This will be fixed soon…
Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Update v4.5.2

Fixed the above bug
PPPDUD
Scratcher
1000+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Why does every library besides ScratchAttach require for me to login to get data about a profile?
Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

PPPDUD wrote:

Why does every library besides ScratchAttach require for me to login to get data about a profile?
To get some data (which doesn't require login), you don't require login using ScratchConnect! See here: https://github.com/Sid72020123/scratchconnect#using-scratchconnect-without-login
Sid72020123
Scratcher
500+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

I made an auto-updating banner which displays stats of ScratchConnect: https://sc-live-images.deta.dev/get_image/banner.png

That banner updates every day. I may add some more stats in it later…

Sadly, I can't use this in forums as the above URL is not white-listed
INSERT-USER_NAME
Scratcher
1000+ posts

[UN-MAINTAINED] ScratchConnect v5.0 - Simple, Easy-to-use Python library to connect the Scratch API and much more!

Sid72020123 wrote:

I made an auto-updating banner which displays stats of ScratchConnect: https://sc-live-images.deta.dev/get_image/banner.png

That banner updates every day. I may add some more stats in it later…

Sadly, I can't use this in forums as the above URL is not white-listed
Maybe there's an image host that lets you update images?

Powered by DjangoBB