見出し画像

ScratchAttach 2.0の更新きたーー!

どうも、かける族です。

先日Timmccool氏のScratchAttach 2.0pypiでリリースされました。
がちでいろんな機能が出ているのでそれを見ていきましょう。

アプデの仕方

コマンドプロンプトで下のように打てば行けます

pip install -U scratchattach

アイデアから見る

Timmccool氏はここでアイデアを出していたので上から見ていきましょう。

New / updated features in 2.0 (will be released in early October 2024)

These are only ideas for now. I don't know yet how many of these I'll actually implement.
If you want to help by submitting a pull request, please choose the v2 branch as base.

2.0 の新機能 / 更新機能 (2024 年 10 月初旬にリリース予定) これらは現時点ではアイデアにすぎません。実際にどれだけ実装するかはまだわかりません。プル リクエストを送信して協力したい場合は、ベースとして v2 ブランチを選択してください。

https://github.com/TimMcCool/scratchattach/issues/242

Session.connect_user_by_id

従来では Session オブジェクトにセッションIDを渡していましたが、専用の関数が作成されました。

MessageEvents class

Activityクラスが作成されて、メッセージや「私が行ったこと」をクラスとして参照できるようになりました。

Session.create_project

プロジェクトが作れますが、5分/5プロジェクト とかいうレート制限がついています。嫌な人はコード解析して自分でつくりましょう。

Session.create_remix

リミックスできます。非共有プロジェクトは「使い方」「タイトル」のみコピーされます。

Comment class

コメントをクラスとして扱えます。
ユーザーのコメントだけ仕様が違う中作ったのはすごいと思います。

Update without ScratchDB

ScratchDBがサ終したので、Scratchからとってくるようになりました。

Session.connect_filterbot

自分のコメント欄の宣伝、スパムを自動削除してくれます。
(英語のみ対応、日本語版出来たら便利そう)

New cloud classes

クラウドストレージや、クラウド監視機能などを備えたツールができたらしいです。

New common methods

内部的な話で、自動的にAPIを叩いてレスポンスを判別してくれるっぽいです。

Project JSON editing capabilities

プロジェクトを編集できるっぽいです。
かなりいろんなことができます。
.sb3からデータを読んだりできるのでこれでpythonでScratchエディターとか作る人いそう

BaseSiteComponent class

サイトのAPIを使うときに必ずこれが継承されるっぽいです。
アップデート関数、ログイン済みか確認する関数、ログイン情報を付与する関数などがほぼすべてのクラスで使えます。

v1.*.*からの移行について

wikiから参照しました。

#旧
import scratchattach as scratch3
session = scratch3.Session("session_id")
events = scratch3.CloudEvents("project_id")
client = scratch3.CloudRequests(conn)
value = scratch3.get_var("project_id", "variable")
dicts = sa.get_project("123").comments()
a_comment = project.get_comment()

#新
import scratchattach as sa #ドキュメントではscratch3からsaとして表記
session = sa.login_by_id("session_id") #専用関数の追加
events = sa.get_cloud("project_id").events()
client = session.connect_cloud("project_id").requests() #少しわかりやすくなった
value = sa.get_cloud("project_id").get_var("project_id") #クラウドオブジェクトから取得するように。
comments = sa.get_project("123").comments() #sa.Commentが返されるように
a_comment = project.comment_by_id()
  • アクティビティは sa.Activity オブジェクトを返します

  • プロジェクト、スタジオ情報は「プロジェクト・スタジオオブジェクト」が100%返されます。

  • .get_ 系関数は get_ 部分が取り除かれていることが多い。

  • 属性がユーザー名を参照する場合、".user "ではなく常に".username "となるように。

  • CloudConnectionとTwCloudConnectionの代わりに、クラウド変数の設定を扱うだけでなく、APIにスパムをかけることなく非常に頻繁に変数を取得するための組み込み関数を持つCloudオブジェクトとTwCloudオブジェクトが存在するようになりました。

  • TwCloudEventsとWsCloudEventsはCloudEventsに統合されました。 以前はCloudEventsと呼ばれていたものはCloudLogEventsになりました。

  • TwCloudRequestsとCloudRequestsはCloudRequestsに統合された。

  • すべてのイベントはデフォルトで常にスレッドで実行されるようになりました。 これを無効にするには、@events.event(thread=False)を使用します。

終わりに

いや、そこまでアップデートされるのは凄すぎる!!!

[ここから宣伝はいります]

🤔 < ScratchHostはすぐ鯖落ちするし無料コインがなかなかたまらんな…]
=====================================
いいPythonホスティングサービスをお探しのあなた!!
それなら Bot-hosting.net を使おう!!!
=====================================

特徴!!!
・簡単にためれるコイン! 5分ぐらいで1週間分のコインをためれます!!
・性能のわりに安すぎる!!
・ほぼ鯖落ちしない!!

ちゃんと悪いとこも言います!!
ノードによってIPbanあり(運ゲーだしそもそもdiscord bot向けサーバー)
・強制的にサポートサーバー入室
・課金(3$以上)しないとサポートがくそになる!

詳しくは この記事 みてねー



この記事が気に入ったらサポートをしてみませんか?