API Reference

This module implements a variety of classes used to hold the data parsed from Tibia.com.

Client

inherited-members:

BaseModel

Enumerations

Enumerations are provided for various values in order to avoid depending on strings.

Many of these enumerations correspond to available options in forms in Tibia.com

Models

These are the classes that defined the models used by Tibia.py.

While it is possible to create instances of these models, their purpose is to be used as data containers.

Characters

The Character section consists of the Character class and its auxiliary classes used to hold its data.

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Worlds

Models related to Tibia.com’s World section. The WorldOverview class contains the list of all worlds, while the World class contains the details of a single world.

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Guilds

Models related to Tibia.com’s Guilds section. The main model is Guild, while GuildEntry is the previewed information in the guild list of the GuildsSection.

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Highscores

Models related to Tibia.com’s Highscores section.

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Houses

Models related to Tibia.com’s Houses section.

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Leaderboard

Models related to Tibia.com’s Leaderboard section.

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Forums

Models related to Tibia.com’s Forum section.

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

News

Models related to Tibia.com’s News section. This also contains the Event Calendar

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Bazaar

Models related to Tibia.com’s Bazaar section.

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Kill Statistics

inherited-members:

BaseModel

inherited-members:

BaseModel

Library

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Library

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

Base Classes

The following classes are not meant to be used or instantiated, but are documented here for informational purposes.

They implement methods and properties that can be inherited by other classes to implement their functionality.

inherited-members:

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

inherited-members:

BaseModel

pydantic model tibiapy.models.pagination.Paginated[source]

An entity made of multiple pages.

Show JSON schema
{
   "title": "Paginated",
   "description": "An entity made of multiple pages.",
   "type": "object",
   "properties": {
      "currentPage": {
         "default": 1,
         "description": "The currently viewed page.",
         "title": "Currentpage",
         "type": "integer"
      },
      "totalPages": {
         "default": 1,
         "description": "The total number of pages.",
         "title": "Totalpages",
         "type": "integer"
      },
      "resultsCount": {
         "default": 0,
         "description": "The total number of entries across all pages.",
         "title": "Resultscount",
         "type": "integer"
      },
      "entries": {
         "default": [],
         "description": "The entries in this page.",
         "items": {},
         "title": "Entries",
         "type": "array"
      }
   }
}

Config:
  • populate_by_name: bool = True

  • alias_generator: function = <function to_camel at 0x7fe05748c900>

  • use_attribute_docstrings: bool = True

Fields:
field current_page: int = 1 (alias 'currentPage')

The currently viewed page.

field entries: List[TypeVar(T)] = []

The entries in this page.

field results_count: int = 0 (alias 'resultsCount')

The total number of entries across all pages.

field total_pages: int = 1 (alias 'totalPages')

The total number of pages.

inherited-members:

BaseModel

pydantic model tibiapy.models.pagination.PaginatedWithUrl[source]

An entity made of multiple pages with URLs.

Show JSON schema
{
   "title": "PaginatedWithUrl",
   "description": "An entity made of multiple pages with URLs.",
   "type": "object",
   "properties": {
      "currentPage": {
         "default": 1,
         "description": "The currently viewed page.",
         "title": "Currentpage",
         "type": "integer"
      },
      "totalPages": {
         "default": 1,
         "description": "The total number of pages.",
         "title": "Totalpages",
         "type": "integer"
      },
      "resultsCount": {
         "default": 0,
         "description": "The total number of entries across all pages.",
         "title": "Resultscount",
         "type": "integer"
      },
      "entries": {
         "default": [],
         "description": "The entries in this page.",
         "items": {},
         "title": "Entries",
         "type": "array"
      }
   }
}

Config:
  • populate_by_name: bool = True

  • alias_generator: function = <function to_camel at 0x7fe05748c900>

  • use_attribute_docstrings: bool = True

Fields:

abstract get_page_url(page)[source]

Get the URL to a specific page of the results.

Return type:

str

property next_page_url: str | None

The URL to the next page of the results, if available.

property previous_page_url: str | None

The URL to the previous page of the results, if available.

inherited-members:

BaseModel

pydantic model tibiapy.models.pagination.AjaxPaginator[source]

A paginator that can be fetched via AJAX requests.

Show JSON schema
{
   "title": "AjaxPaginator",
   "description": "A paginator that can be fetched via AJAX requests.",
   "type": "object",
   "properties": {
      "currentPage": {
         "default": 1,
         "description": "The currently viewed page.",
         "title": "Currentpage",
         "type": "integer"
      },
      "totalPages": {
         "default": 1,
         "description": "The total number of pages.",
         "title": "Totalpages",
         "type": "integer"
      },
      "resultsCount": {
         "default": 0,
         "description": "The total number of entries across all pages.",
         "title": "Resultscount",
         "type": "integer"
      },
      "entries": {
         "default": [],
         "description": "The entries in this page.",
         "items": {},
         "title": "Entries",
         "type": "array"
      },
      "isFullyFetched": {
         "default": false,
         "description": "Whether this result set was fully fetched or not.",
         "title": "Isfullyfetched",
         "type": "boolean"
      }
   }
}

Config:
  • populate_by_name: bool = True

  • alias_generator: function = <function to_camel at 0x7fe05748c900>

  • use_attribute_docstrings: bool = True

Fields:
field is_fully_fetched: bool = False (alias 'isFullyFetched')

Whether this result set was fully fetched or not.

inherited-members:

BaseModel

Parsers

Parsers are used to convert to extract information from the HTML content of pages in Tibia.com.

The majority of users do not need to interact with these classes, but they can be used to provide alternate clients using other network libraries.

Most of the parsers support parsing the page displayed for no results (e.g. trying to parse the page for non-existent world Fidera) by returning None instead of raising an exception. Additionally, parsers attempt to detect when the HTML belongs to a different section by raising a InvalidContent exception.

Exceptions

Utility functions

URL functions