サイトモジュール

サイトクラス

class wikidot.module.site.SitePagesMethods(site)[ソース]

ベースクラス: object

サイト内のページコレクションに対する操作を提供するクラス

ページの検索機能など、複数のページに対する操作を提供する。 Site.pagesプロパティを通じてアクセスする。

パラメータ:

site (Site)

search(**kwargs)[ソース]

サイト内のページを検索する

キーワード引数を受け取り、SearchPagesQueryオブジェクトに変換して検索を実行する。

パラメータ:

**kwargs --

SearchPagesQueryに渡す検索条件。以下のパラメータが利用可能:

ページ選択パラメータ: - pagetype: str - ページタイプ(例: "normal", "admin"等) - category: str - カテゴリ名 - tags: list[str] | str - タグリスト(リストまたは空白区切り文字列) - parent: str - 親ページ名 - link_to: str - リンク先ページ名 - created_at: str - 作成日時の条件(例: "> -86400 86400") - updated_at: str - 更新日時の条件 - created_by: User | str - 作成者(ユーザーオブジェクトまたはユーザー名) - rating: str - 評価値による絞り込み - votes: str - 投票数による絞り込み - name: str - ページ名による絞り込み - fullname: str - フルネームによる絞り込み(完全一致) - range: str - 範囲指定

ソートパラメータ: - order: str - ソート順(例: "created_at desc", "title asc")

ページネーションパラメータ: - offset: int - 取得開始位置 - limit: int - 取得件数制限 - perPage: int - 1ページあたりの表示件数

レイアウトパラメータ: - separate: str - 個別表示するかどうか - wrapper: str - ラッパー要素を表示するかどうか

戻り値:

検索結果のページコレクション

戻り値の型:

PageCollection

class wikidot.module.site.SitePageMethods(site)[ソース]

ベースクラス: object

サイト内の個別ページに対する操作を提供するクラス

ページの取得や作成などの個別ページ操作を提供する。 Site.pageプロパティを通じてアクセスする。

パラメータ:

site (Site)

get(fullname, raise_when_not_found=True)[ソース]

フルネームからページを取得する

パラメータ:
  • fullname (str) -- ページのフルネーム(例: "コンポーネント:scp-173")

  • raise_when_not_found (bool, default True) -- ページが見つからなかった場合に例外を発生させるかどうか Falseの場合、ページが見つからなければNoneを返す

戻り値:

ページオブジェクト、または見つからない場合はNone

戻り値の型:

Page | None

例外:

NotFoundException -- raise_when_not_foundがTrueでページが見つからない場合

create(fullname, title='', source='', comment='', force_edit=False)[ソース]

ページを新規作成する

パラメータ:
  • fullname (str) -- ページのフルネーム(例: "scp-173")

  • title (str, default "") -- ページのタイトル

  • source (str, default "") -- ページのソースコード(Wikidot記法)

  • comment (str, default "") -- 編集コメント

  • force_edit (bool, default False) -- ページが既に存在する場合に上書きするかどうか

戻り値:

作成されたページオブジェクト

戻り値の型:

Page

例外:

TargetErrorException -- ページが既に存在し、force_editがFalseの場合

class wikidot.module.site.SiteForumMethods(site)[ソース]

ベースクラス: object

サイト内のフォーラム機能に対する操作を提供するクラス

フォーラムカテゴリの取得などのフォーラム関連機能を提供する。 Site.forumプロパティを通じてアクセスする。

パラメータ:

site (Site)

property categories: ForumCategoryCollection

サイト内のフォーラムカテゴリ一覧を取得する

戻り値:

フォーラムカテゴリのコレクション

戻り値の型:

ForumCategoryCollection

class wikidot.module.site.Site(client, id, title, unix_name, domain, ssl_supported)[ソース]

ベースクラス: object

Wikidotサイトを表すクラス

サイトの基本情報とサイトに対する様々な操作機能を提供する。 ページ、フォーラム、メンバー管理などの機能にアクセスするための起点となる。

パラメータ:
client

クライアントインスタンス

Type:

Client

id

サイトID

Type:

int

title

サイトのタイトル

Type:

str

unix_name

サイトのUNIX名(URLの一部として使用される)

Type:

str

domain

サイトのドメイン(完全修飾ドメイン名)

Type:

str

ssl_supported

サイトがSSL/HTTPS対応しているかどうか

Type:

bool

client: Client
id: int
title: str
unix_name: str
domain: str
ssl_supported: bool
static from_unix_name(client, unix_name)[ソース]

UNIX名からサイトオブジェクトを取得する

指定されたUNIX名のサイトにアクセスし、サイト情報を解析してSiteオブジェクトを生成する。

パラメータ:
  • client (Client) -- クライアントインスタンス

  • unix_name (str) -- サイトのUNIX名(例: "fondation")

戻り値:

サイトオブジェクト

戻り値の型:

Site

例外:
amc_request(bodies, return_exceptions=False)[ソース]

このサイトに対してAjax Module Connectorリクエストを実行する

パラメータ:
  • bodies (list[dict]) -- リクエストボディのリスト

  • return_exceptions (bool, default False) -- 例外を返すか送出するか(True: 返す, False: 送出する)

戻り値:

レスポンスのリスト、またはreturn_exceptionsがTrueの場合は例外

戻り値の型:

list | Exception

property applications

サイトへの未処理の参加申請を取得する

戻り値:

参加申請のリスト

戻り値の型:

list[SiteApplication]

invite_user(user, text)[ソース]

ユーザーをサイトに招待する

パラメータ:
  • user (User) -- 招待するユーザー

  • text (str) -- 招待メッセージ

例外:
property url

サイトのURLを取得する

戻り値:

サイトの完全なURL

戻り値の型:

str

property members

サイトのメンバー一覧を取得する

戻り値:

サイトメンバーのリスト

戻り値の型:

list[SiteMember]

property moderators

サイトのモデレーター一覧を取得する

戻り値:

サイトモデレーターのリスト

戻り値の型:

list[SiteMember]

property admins

サイトの管理者一覧を取得する

戻り値:

サイト管理者のリスト

戻り値の型:

list[SiteMember]

member_lookup(user_name, user_id=None)[ソース]

指定されたユーザーがサイトのメンバーかどうかを確認する

パラメータ:
  • user_name (str) -- 確認するユーザー名

  • user_id (int | None, default None) -- 確認するユーザーID(指定した場合はIDも一致する必要がある)

戻り値:

ユーザーがサイトメンバーである場合はTrue、そうでない場合はFalse

戻り値の型:

bool

get_thread(thread_id)[ソース]

スレッドを取得する

パラメータ:

thread_id (int) -- スレッドID

戻り値:

スレッドオブジェクト

戻り値の型:

ForumThread

get_threads(thread_ids)[ソース]

複数のスレッドを取得する

パラメータ:

thread_ids (list[int]) -- スレッドIDのリスト

戻り値:

スレッドオブジェクトのリスト

戻り値の型:

list[ForumThread]

サイトメンバー

Wikidotサイトのメンバーを扱うモジュール

このモジュールは、Wikidotサイトのメンバーに関連するクラスや機能を提供する。 メンバーの情報取得や権限変更などの操作が可能。

class wikidot.module.site_member.SiteMember(site, user, joined_at)[ソース]

ベースクラス: object

Wikidotサイトのメンバーを表すクラス

サイトのメンバー情報を保持し、権限変更などの操作機能を提供する。

パラメータ:
site

メンバーが所属するサイト

Type:

Site

user

メンバーユーザー

Type:

AbstractUser

joined_at

サイトへの参加日時(取得できない場合はNone)

Type:

datetime | None

site: Site
user: AbstractUser
joined_at: datetime | None
static get(site, group=None)[ソース]

サイトのメンバーリストを取得する

指定したグループ(管理者、モデレーターなど)のメンバー一覧を取得する。

パラメータ:
  • site (Site) -- メンバーリストを取得するサイト

  • group (str | None, default None) -- 取得するメンバーのグループ("admins", "moderators", または "" で全メンバー)

戻り値:

メンバーのリスト

戻り値の型:

list[SiteMember]

例外:

ValueError -- 無効なグループが指定された場合

to_moderator()[ソース]

メンバーをモデレーターに昇格させる

例外:
remove_moderator()[ソース]

メンバーのモデレーター権限を削除する

例外:
to_admin()[ソース]

メンバーを管理者に昇格させる

例外:
remove_admin()[ソース]

メンバーの管理者権限を削除する

例外:

サイト申請

Wikidotサイトへの参加申請を扱うモジュール

このモジュールは、Wikidotサイトへの参加申請に関連するクラスや機能を提供する。 申請の取得、承認、拒否などの操作が可能。

class wikidot.module.site_application.SiteApplication(site, user, text)[ソース]

ベースクラス: object

Wikidotサイトへの参加申請を表すクラス

ユーザーからサイトへの参加申請情報を保持し、申請の承認や拒否などの 処理機能を提供する。

パラメータ:
site

申請先のサイト

Type:

Site

user

申請者

Type:

AbstractUser

text

申請メッセージ

Type:

str

site: Site
user: AbstractUser
text: str
static acquire_all(site)[ソース]

サイトへの未処理の参加申請をすべて取得する

パラメータ:

site (Site) -- 参加申請を取得するサイト

戻り値:

参加申請のリスト

戻り値の型:

list[SiteApplication]

例外:
accept()[ソース]

参加申請を承認する

申請者をサイトのメンバーとして追加する。

例外:
decline()[ソース]

参加申請を拒否する

申請者の参加を拒否し、申請を削除する。

例外: