Buckets:
| from playwright.sync_api import sync_playwright | |
| # Example: Discovering buttons and other elements on a page | |
| with sync_playwright() as p: | |
| browser = p.chromium.launch(headless=True) | |
| page = browser.new_page() | |
| # Navigate to page and wait for it to fully load | |
| page.goto('http://localhost:5173') | |
| page.wait_for_load_state('networkidle') | |
| # Discover all buttons on the page | |
| buttons = page.locator('button').all() | |
| print(f"Found {len(buttons)} buttons:") | |
| for i, button in enumerate(buttons): | |
| text = button.inner_text() if button.is_visible() else "[hidden]" | |
| print(f" [{i}] {text}") | |
| # Discover links | |
| links = page.locator('a[href]').all() | |
| print(f"\nFound {len(links)} links:") | |
| for link in links[:5]: # Show first 5 | |
| text = link.inner_text().strip() | |
| href = link.get_attribute('href') | |
| print(f" - {text} -> {href}") | |
| # Discover input fields | |
| inputs = page.locator('input, textarea, select').all() | |
| print(f"\nFound {len(inputs)} input fields:") | |
| for input_elem in inputs: | |
| name = input_elem.get_attribute('name') or input_elem.get_attribute('id') or "[unnamed]" | |
| input_type = input_elem.get_attribute('type') or 'text' | |
| print(f" - {name} ({input_type})") | |
| # Take screenshot for visual reference | |
| page.screenshot(path='/tmp/page_discovery.png', full_page=True) | |
| print("\nScreenshot saved to /tmp/page_discovery.png") | |
| browser.close() |
Xet Storage Details
- Size:
- 1.46 kB
- Xet hash:
- 337567dbd5036ee28184f1403b027c18159b7c6d2a3de63227ced9e9e52f0de5
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.