ページモジュール

ページクラス

class wikidot.module.page.SearchPagesQuery(pagetype='*', category='*', tags=None, parent=None, link_to=None, created_at=None, updated_at=None, created_by=None, rating=None, votes=None, name=None, fullname=None, range=None, order='created_at desc', offset=0, limit=None, perPage=250, separate='no', wrapper='no')[ソース]

ベースクラス: object

ページ検索クエリを表すクラス

Wikidotのページ検索に使用される各種検索条件を定義する。 ListPagesModuleに渡すためのクエリパラメータをカプセル化している。

パラメータ:
  • pagetype (str | None)

  • category (str | None)

  • tags (str | list[str] | None)

  • parent (str | None)

  • link_to (str | None)

  • created_at (str | None)

  • updated_at (str | None)

  • created_by (User | str | None)

  • rating (str | None)

  • votes (str | None)

  • name (str | None)

  • fullname (str | None)

  • range (str | None)

  • order (str)

  • offset (int | None)

  • limit (int | None)

  • perPage (int | None)

  • separate (str | None)

  • wrapper (str | None)

pagetype

ページタイプ(例: "normal", "admin"等)

Type:

str, default "*"

category

カテゴリ名

Type:

str, default "*"

tags

検索対象のタグ(文字列または文字列のリスト)

Type:

str | list[str] | None, default None

parent

親ページ名

Type:

str | None, default None

リンク先ページ名

Type:

str | None, default None

created_at

作成日時の条件

Type:

str | None, default None

updated_at

更新日時の条件

Type:

str | None, default None

created_by

作成者による絞り込み

Type:

User | str | None, default None

rating

評価値による絞り込み

Type:

str | None, default None

votes

投票数による絞り込み

Type:

str | None, default None

name

ページ名による絞り込み

Type:

str | None, default None

fullname

フルネームによる絞り込み(完全一致)

Type:

str | None, default None

range

範囲指定

Type:

str | None, default None

order

ソート順(例: "created_at desc", "title asc"等)

Type:

str, default "created_at desc"

offset

取得開始位置

Type:

int, default 0

limit

取得件数制限

Type:

int | None, default None

perPage

1ページあたりの表示件数

Type:

int, default 250

separate

個別表示するかどうか

Type:

str, default "no"

wrapper

ラッパー要素を表示するかどうか

Type:

str, default "no"

pagetype: Optional[str] = '*'
category: Optional[str] = '*'
tags: Union[str, list[str], None] = None
parent: Optional[str] = None
link_to: Optional[str] = None
created_at: Optional[str] = None
updated_at: Optional[str] = None
created_by: Union[User, str, None] = None
rating: Optional[str] = None
votes: Optional[str] = None
name: Optional[str] = None
fullname: Optional[str] = None
range: Optional[str] = None
order: str = 'created_at desc'
offset: Optional[int] = 0
limit: Optional[int] = None
perPage: Optional[int] = 250
separate: Optional[str] = 'no'
wrapper: Optional[str] = 'no'
as_dict()[ソース]

クエリパラメータを辞書形式に変換する

タグがリスト形式の場合は空白区切りの文字列に変換する。

戻り値:

APIリクエスト用の辞書形式パラメータ

戻り値の型:

dict[str, Any]

class wikidot.module.page.PageCollection(site=None, pages=None)[ソース]

ベースクラス: list[Page]

ページオブジェクトのコレクションを表すクラス

複数のページオブジェクトを格納し、一括して操作するための機能を提供する。 ページの検索、一括取得、一括操作などの機能を集約している。

パラメータ:
find(fullname)[ソース]

指定したフルネームのページを取得する

パラメータ:

fullname (str) -- 取得するページのフルネーム

戻り値:

指定したフルネームのページ。存在しない場合はNone

戻り値の型:

Page | None

static search_pages(site, query=SearchPagesQuery())[ソース]

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

指定されたクエリに基づいてサイト内のページを検索し、結果を返す。 Wikidotの「ListPagesModule」を使用して検索を実行する。

パラメータ:
戻り値:

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

戻り値の型:

PageCollection

例外:
get_page_ids()[ソース]

コレクション内の全ページのIDを取得する

IDが設定されていないページについて、一括でIDを取得する。

戻り値:

自身(メソッドチェーン用)

戻り値の型:

PageCollection

get_page_sources()[ソース]

コレクション内の全ページのソースコードを取得する

ページのソースコード(Wikidot記法)を一括で取得し、各ページのsourceプロパティに設定する。

戻り値:

自身(メソッドチェーン用)

戻り値の型:

PageCollection

get_page_revisions()[ソース]

コレクション内の全ページのリビジョン履歴を取得する

ページのリビジョン(編集履歴)を一括で取得し、各ページのrevisionsプロパティに設定する。

戻り値:

自身(メソッドチェーン用)

戻り値の型:

PageCollection

get_page_votes()[ソース]

コレクション内の全ページの投票情報を取得する

ページへの投票(レーティング)情報を一括で取得し、各ページのvotesプロパティに設定する。

戻り値:

自身(メソッドチェーン用)

戻り値の型:

PageCollection

class wikidot.module.page.Page(site, fullname, name, category, title, children_count, comments_count, size, rating, votes_count, rating_percent, revisions_count, parent_fullname, tags, created_by, created_at, updated_by, updated_at, commented_by, commented_at, _id=None, _source=None, _revisions=None, _votes=None, _metas=None)[ソース]

ベースクラス: object

Wikidotページを表すクラス

Wikidotサイト内の単一ページに関する情報と操作機能を提供する。 ページの基本情報、メタデータ、履歴、評価などを管理する。

パラメータ:
site

ページが存在するサイト

Type:

Site

fullname

ページのフルネーム(例: "コンポーネント:scp-173")

Type:

str

name

ページ名(例: "scp-173")

Type:

str

category

カテゴリ(例: "コンポーネント")

Type:

str

title

ページのタイトル

Type:

str

children_count

子ページの数

Type:

int

comments_count

コメント数

Type:

int

size

ページのサイズ(バイト数)

Type:

int

rating

レーティング(+/-評価の場合はint、5つ星評価の場合はfloat)

Type:

int | float

votes_count

投票数

Type:

int

rating_percent

5つ星評価システムにおけるパーセンテージ値(0.0~1.0)

Type:

float

revisions_count

リビジョン(編集履歴)の数

Type:

int

parent_fullname

親ページのフルネーム(親がない場合はNone)

Type:

str | None

tags

付けられたタグのリスト

Type:

list[str]

created_by

ページの作成者

Type:

User

created_at

ページの作成日時

Type:

datetime

updated_by

最終更新者

Type:

User

updated_at

最終更新日時

Type:

datetime

commented_by

最後にコメントしたユーザー(コメントがない場合はNone)

Type:

User | None

commented_at

最後のコメント日時(コメントがない場合はNone)

Type:

datetime | None

_id

ページのID(内部識別子)

Type:

int | None

_source

ページのソースコード(要求時に取得)

Type:

PageSource | None

_revisions

ページのリビジョン履歴(要求時に取得)

Type:

PageRevisionCollection | None

_votes

ページへの投票情報(要求時に取得)

Type:

PageVoteCollection | None

_metas

ページのメタタグ情報(要求時に取得)

Type:

dict[str, str] | None

site: Site
fullname: str
name: str
category: str
title: str
children_count: int
comments_count: int
size: int
rating: int | float
votes_count: int
rating_percent: float
revisions_count: int
parent_fullname: str | None
tags: list[str]
created_by: User
created_at: datetime
updated_by: User
updated_at: datetime
commented_by: Optional[User]
commented_at: Optional[datetime]
get_url()[ソース]

ページの完全なURLを取得する

サイトのURLとページ名から完全なページURLを生成する。

戻り値:

ページの完全なURL

戻り値の型:

str

property id: int

ページIDを取得する

IDが未取得の場合は自動的に取得処理を行う。

戻り値:

ページID

戻り値の型:

int

例外:

NotFoundException -- ページIDが見つからない場合

is_id_acquired()[ソース]

ページIDが既に取得済みかどうかを確認する

戻り値:

IDが取得済みの場合はTrue、未取得の場合はFalse

戻り値の型:

bool

property source: PageSource

ページのソースコードを取得する

ソースコードが未取得の場合は自動的に取得処理を行う。

戻り値:

ページのソースコードオブジェクト

戻り値の型:

PageSource

例外:

NotFoundException -- ページソースが見つからない場合

property revisions: PageRevisionCollection

ページのリビジョン履歴を取得する

リビジョン履歴が未取得の場合は自動的に取得処理を行う。

戻り値:

ページのリビジョン履歴コレクション

戻り値の型:

PageRevisionCollection

例外:

NotFoundException -- リビジョン履歴が見つからない場合

property latest_revision: PageRevision

ページの最新リビジョンを取得する

revision_countとrev_noが一致するリビジョンを最新として返す。

戻り値:

最新のリビジョンオブジェクト

戻り値の型:

PageRevision

例外:

NotFoundException -- 最新リビジョンが見つからない場合

property votes: PageVoteCollection

ページへの投票情報を取得する

投票情報が未取得の場合は自動的に取得処理を行う。

戻り値:

ページへの投票情報コレクション

戻り値の型:

PageVoteCollection

例外:

NotFoundException -- 投票情報が見つからない場合

destroy()[ソース]

ページを削除する

ログイン状態でのみ実行可能。ページの完全削除を行う。

例外:
property metas: dict[str, str]

ページのメタタグ情報を取得する

メタタグ情報が未取得の場合は自動的に取得処理を行う。

戻り値:

メタタグ名とその内容の辞書

戻り値の型:

dict[str, str]

static create_or_edit(site, fullname, page_id=None, title='', source='', comment='', force_edit=False, raise_on_exists=False)[ソース]

ページを作成または編集する

新規ページの作成または既存ページの編集を行う。 編集の場合はページロックの取得とページ保存の処理を行う。

パラメータ:
  • site (Site) -- ページが属するサイト

  • fullname (str) -- ページのフルネーム

  • page_id (int | None, default None) -- 編集する場合のページID(新規作成時はNone)

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

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

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

  • force_edit (bool, default False) -- 他のユーザーによるロックを強制的に解除するかどうか

  • raise_on_exists (bool, default False) -- ページが既に存在する場合に例外を送出するかどうか

戻り値:

作成または編集されたページオブジェクト

戻り値の型:

Page

例外:
edit(title=None, source=None, comment=None, force_edit=False)[ソース]

このページを編集する

既存ページの内容を更新する。指定されていないパラメータは現在の値を維持する。

パラメータ:
  • title (str | None, default None) -- 新しいタイトル(Noneの場合は現在のタイトルを維持)

  • source (str | None, default None) -- 新しいソースコード(Noneの場合は現在のソースを維持)

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

  • force_edit (bool, default False) -- 他のユーザーによるロックを強制的に解除するかどうか

戻り値:

編集後のページオブジェクト

戻り値の型:

Page

例外:

同上(create_or_editメソッドと同様) --

commit_tags()[ソース]

ページのタグ情報を保存する

現在のtagsプロパティの内容をWikidotに保存する。

戻り値:

自身(メソッドチェーン用)

戻り値の型:

Page

例外:

ページリビジョン

Wikidotページの編集履歴(リビジョン)を扱うモジュール

このモジュールは、Wikidotページの編集履歴(リビジョン)に関連するクラスや機能を提供する。 リビジョンの取得、ソースの取得、HTML表示などの操作が可能。

class wikidot.module.page_revision.PageRevisionCollection(page=None, revisions=None)[ソース]

ベースクラス: list[PageRevision]

ページリビジョンのコレクションを表すクラス

ページの編集履歴(リビジョン)の複数バージョンを格納し、一括して操作するための リスト拡張クラス。ソースコードやHTMLの一括取得など、便利な機能を提供する。

パラメータ:
find(id)[ソース]

指定したリビジョンIDのリビジョンを取得する

パラメータ:

id (int) -- 取得するリビジョンのID

戻り値:

指定したIDのリビジョン。見つからない場合はNone

戻り値の型:

PageRevision | None

get_sources()[ソース]

コレクション内のすべてのリビジョンのソースコードを取得する

戻り値:

自身(メソッドチェーン用)

戻り値の型:

PageRevisionCollection

get_htmls()[ソース]

コレクション内のすべてのリビジョンのHTML表示を取得する

戻り値:

自身(メソッドチェーン用)

戻り値の型:

PageRevisionCollection

class wikidot.module.page_revision.PageRevision(page, id, rev_no, created_by, created_at, comment, _source=None, _html=None)[ソース]

ベースクラス: object

ページのリビジョン(編集履歴のバージョン)を表すクラス

ページの特定のバージョンに関する情報を保持する。リビジョン番号、作成者、作成日時、 編集コメントなどの基本情報に加え、ソースコードやHTML表示へのアクセス機能を提供する。

パラメータ:
page

リビジョンが属するページ

Type:

Page

id

リビジョンID

Type:

int

rev_no

リビジョン番号

Type:

int

created_by

リビジョンの作成者

Type:

AbstractUser

created_at

リビジョンの作成日時

Type:

datetime

comment

編集コメント

Type:

str

_source

リビジョンのソースコード(内部キャッシュ用)

Type:

PageSource | None, default None

_html

リビジョンのHTML表示(内部キャッシュ用)

Type:

str | None, default None

page: Page
id: int
rev_no: int
created_by: AbstractUser
created_at: datetime
comment: str
is_source_acquired()[ソース]

ソースコードが既に取得済みかどうかを確認する

戻り値:

ソースコードが取得済みの場合はTrue、そうでない場合はFalse

戻り値の型:

bool

is_html_acquired()[ソース]

HTML表示が既に取得済みかどうかを確認する

戻り値:

HTML表示が取得済みの場合はTrue、そうでない場合はFalse

戻り値の型:

bool

property source: PageSource | None

リビジョンのソースコードを取得する

ソースコードが未取得の場合は自動的に取得処理を行う。

戻り値:

リビジョンのソースコード

戻り値の型:

PageSource | None

property html: str | None

リビジョンのHTML表示を取得する

HTML表示が未取得の場合は自動的に取得処理を行う。

戻り値:

リビジョンのHTML表示

戻り値の型:

str | None

ページソース

Wikidotページのソースコードを扱うモジュール

このモジュールは、Wikidotページのソースコード(Wikidot記法)に関連するクラスや機能を提供する。

class wikidot.module.page_source.PageSource(page, wiki_text)[ソース]

ベースクラス: object

ページのソースコード(Wikidot記法)を表すクラス

Wikidotページのソースコード(Wikidot記法)を保持し、基本的な操作を提供する。 ページの現在または特定リビジョンのソースコードを表現する。

パラメータ:
page

ソースコードが属するページ

Type:

Page

wiki_text

ページのソースコード(Wikidot記法)

Type:

str

page: Page
wiki_text: str

ページ評価

Wikidotページの投票(レーティング)を扱うモジュール

このモジュールは、Wikidotページの投票(レーティング)に関連するクラスや機能を提供する。 ページへの投票情報の取得や表示などの操作が可能。

class wikidot.module.page_votes.PageVoteCollection(page, votes)[ソース]

ベースクラス: list[PageVote]

ページ投票のコレクションを表すクラス

ページに対する複数の投票(レーティング)を格納し、一括して操作するための リスト拡張クラス。

パラメータ:
find(user)[ソース]

指定ユーザーの投票を取得する

パラメータ:

user (AbstractUser) -- 投票を行ったユーザー

戻り値:

ユーザーの投票情報

戻り値の型:

PageVote

class wikidot.module.page_votes.PageVote(page, user, value)[ソース]

ベースクラス: object

ページへの投票(レーティング)を表すクラス

ユーザーがページに対して行った投票(評価)の情報を保持する。

パラメータ:
page

投票が属するページ

Type:

Page

user

投票を行ったユーザー

Type:

AbstractUser

value

投票値(+1/-1 または 数値)

Type:

int

page: Page
user: AbstractUser
value: int