Webium
Webium is a Page Object pattern implementation library for Python (http://martinfowler.com/bliki/PageObject.html). It allows you to extend WebElement class to your custom controls like Link, Button and group them as pages.
Install / Use
/learn @wgnet/WebiumREADME
Webium
Webium is a Page Object pattern implementation library for Python (http://martinfowler.com/bliki/PageObject.html).
It allows you to extend WebElement class to your custom controls like Link, Button and group them as pages.
Installation
The latest stable version is available on PyPI:
pip install webium
Usage
Main classes are:
- webium.Find
- webium.Finds
- webium.BasePage
Basic usage example:
from selenium.webdriver.common.by import By
from selenium.webdriver.remote.webelement import WebElement
from webium.controls.link import Link
from webium.driver import get_driver
from webium import BasePage, Find, Finds
class GooglePage(BasePage):
url = 'http://www.google.com'
text_field = Find(by=By.NAME, value='q')
button = Find(by=By.NAME, value='btnK')
class ResultItem(WebElement):
link = Find(Link, By.XPATH, './/h3/a')
class ResultsPage(BasePage):
stat = Find(by=By.ID, value='resultStats')
results = Finds(ResultItem, By.XPATH, '//div/li')
if __name__ == '__main__':
home_page = GooglePage()
home_page.open()
home_page.text_field.send_keys('Page Object')
home_page.button.click()
results_page = ResultsPage()
print('Results summary: ' + results_page.stat.text)
for item in results_page.results:
print(item.link.text)
get_driver().quit()
More usage details are available here: http://wgnet.github.io/webium/
Related Skills
node-connect
339.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
claude-opus-4-5-migration
83.9kMigrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5
frontend-design
83.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
model-usage
339.5kUse CodexBar CLI local cost usage to summarize per-model usage for Codex or Claude, including the current (most recent) model or a full model breakdown. Trigger when asked for model-level usage/cost data from codexbar, or when you need a scriptable per-model summary from codexbar cost JSON.
