WebLair Async:
Browser Control Functions
start_chromium(url=None, headless=False, **kwargs)
Starts a Chromium browser instance
Returns a Page object
Optional URL to navigate to
Configurable headless mode and additional options
start_firefox(url=None, headless=False, **kwargs)
Starts a Firefox browser instance
Similar to start_chromium but for Firefox
go_to(url, page=None)
Navigates to a specified URL
Automatically adds 'http://' if protocol not specified
kill_browser(page=None)
Closes the browser and cleans up resources
Resets browser manager state
Interaction Functions
write(text, page=None, into=None)
Types text into fields
Can target specific field by label or placeholder
Works with focused element if no target specified
click(element, page=None)
Clicks on elements identified by text, Point, or element reference
Works with buttons, links, and any clickable elements
press(key, page=None)
Simulates keyboard key press
Works with Keys class constants (ENTER, TAB, etc.)
hover(element, page=None)
Moves mouse over specified element
Accepts text, element handle, or locator
scroll_to(element, page=None)
Scrolls element into view
Works with text or element references
Element Classes
Button(text=None, page=None)
Methods:
exists(): Checks if button exists
is_enabled(): Checks if button is enabled
TextField(label=None, page=None)
Methods:
exists(): Checks if field exists
value(): Gets current text value
type(text): Types text into field
Link(text=None, page=None)
Methods:
exists(): Checks if link exists
href(): Gets link URL
Alert(page=None)
Methods:
accept(): Accepts dialog
dismiss(): Dismisses dialog
text(): Gets alert message
Helper Classes
Point(x, y)
Represents screen coordinates
Supports addition/subtraction for offset calculations
Keys
Constants for keyboard keys
Examples: ENTER, TAB, ESCAPE, etc.
Config
Configuration settings
Properties:
implicit_wait_secs
browser_type
default_timeout
screenshot_dir
viewport_size
Utility Functions
find_all(element_type, page=None)
Finds all elements of specified type (Button, TextField, Link)
Returns list of elements
wait_until(condition_fn, timeout=None, page=None)
Waits for condition to be true
Supports both sync and async conditions
Configurable timeout
attach_file(file_path, to=None, page=None)
Handles file uploads
Can target specific file input
get_text(element, page=None)
Gets text content of element
Works with various element types
take_screenshot(path, full_page=False, page=None)
Captures screenshot
Optional full page capture
Raw data
{
"_id": null,
"home_page": "https://github.com/santhosh/",
"name": "weblair",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": null,
"author": "Kammari Santhosh",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/ed/89/09b40f06afd72e9056e15526c6d4cd9b2d33dd9bb14c4b78302a3859db93/weblair-0.0.4.tar.gz",
"platform": null,
"description": "WebLair Async:\n\nBrowser Control Functions\n\nstart_chromium(url=None, headless=False, **kwargs)\n\nStarts a Chromium browser instance\nReturns a Page object\nOptional URL to navigate to\nConfigurable headless mode and additional options\n\n\nstart_firefox(url=None, headless=False, **kwargs)\n\nStarts a Firefox browser instance\nSimilar to start_chromium but for Firefox\n\n\ngo_to(url, page=None)\n\nNavigates to a specified URL\nAutomatically adds 'http://' if protocol not specified\n\n\nkill_browser(page=None)\n\nCloses the browser and cleans up resources\nResets browser manager state\n\n\n\nInteraction Functions\n\nwrite(text, page=None, into=None)\n\nTypes text into fields\nCan target specific field by label or placeholder\nWorks with focused element if no target specified\n\n\nclick(element, page=None)\n\nClicks on elements identified by text, Point, or element reference\nWorks with buttons, links, and any clickable elements\n\n\npress(key, page=None)\n\nSimulates keyboard key press\nWorks with Keys class constants (ENTER, TAB, etc.)\n\n\nhover(element, page=None)\n\nMoves mouse over specified element\nAccepts text, element handle, or locator\n\n\nscroll_to(element, page=None)\n\nScrolls element into view\nWorks with text or element references\n\n\n\nElement Classes\n\nButton(text=None, page=None)\n\nMethods:\n\nexists(): Checks if button exists\nis_enabled(): Checks if button is enabled\n\n\n\n\nTextField(label=None, page=None)\n\nMethods:\n\nexists(): Checks if field exists\nvalue(): Gets current text value\ntype(text): Types text into field\n\n\n\n\nLink(text=None, page=None)\n\nMethods:\n\nexists(): Checks if link exists\nhref(): Gets link URL\n\n\n\n\nAlert(page=None)\n\nMethods:\n\naccept(): Accepts dialog\ndismiss(): Dismisses dialog\ntext(): Gets alert message\n\n\n\n\n\nHelper Classes\n\nPoint(x, y)\n\nRepresents screen coordinates\nSupports addition/subtraction for offset calculations\n\n\nKeys\n\nConstants for keyboard keys\nExamples: ENTER, TAB, ESCAPE, etc.\n\n\nConfig\n\nConfiguration settings\nProperties:\n\nimplicit_wait_secs\nbrowser_type\ndefault_timeout\nscreenshot_dir\nviewport_size\n\n\n\n\n\nUtility Functions\n\nfind_all(element_type, page=None)\n\nFinds all elements of specified type (Button, TextField, Link)\nReturns list of elements\n\n\nwait_until(condition_fn, timeout=None, page=None)\n\nWaits for condition to be true\nSupports both sync and async conditions\nConfigurable timeout\n\n\nattach_file(file_path, to=None, page=None)\n\nHandles file uploads\nCan target specific file input\n\n\nget_text(element, page=None)\n\nGets text content of element\nWorks with various element types\n\n\ntake_screenshot(path, full_page=False, page=None)\n\nCaptures screenshot\nOptional full page capture\n\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "agents based on pyautogui",
"version": "0.0.4",
"project_urls": {
"Homepage": "https://github.com/santhosh/",
"Repository": "https://github.com/santhosh/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "00a530af10b7ee6aec951764fe5202da36d55c06cf36066cafda45016b12a405",
"md5": "e2d943df5bdd8d098a53d88e0230572f",
"sha256": "d476053a5ce53a8ab2c6800a232352b9760c418b07d5f9f12bda028e9bdf6cf1"
},
"downloads": -1,
"filename": "weblair-0.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e2d943df5bdd8d098a53d88e0230572f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 15669,
"upload_time": "2025-01-26T11:49:57",
"upload_time_iso_8601": "2025-01-26T11:49:57.770648Z",
"url": "https://files.pythonhosted.org/packages/00/a5/30af10b7ee6aec951764fe5202da36d55c06cf36066cafda45016b12a405/weblair-0.0.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ed8909b40f06afd72e9056e15526c6d4cd9b2d33dd9bb14c4b78302a3859db93",
"md5": "7d0ee310072a18b6f14758cae7c42f60",
"sha256": "a8e3cf8c8cdc4eb381fd370ee4e1f355c18be29ade0930eebc8bd63dcca776a6"
},
"downloads": -1,
"filename": "weblair-0.0.4.tar.gz",
"has_sig": false,
"md5_digest": "7d0ee310072a18b6f14758cae7c42f60",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 15087,
"upload_time": "2025-01-26T11:50:00",
"upload_time_iso_8601": "2025-01-26T11:50:00.401940Z",
"url": "https://files.pythonhosted.org/packages/ed/89/09b40f06afd72e9056e15526c6d4cd9b2d33dd9bb14c4b78302a3859db93/weblair-0.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-26 11:50:00",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "weblair"
}