{"id":51333815,"url":"https://github.com/browserless/examples","last_synced_at":"2026-07-02T01:03:26.546Z","repository":{"id":365367945,"uuid":"1261543119","full_name":"browserless/examples","owner":"browserless","description":"Examples of using Browserless","archived":false,"fork":false,"pushed_at":"2026-06-25T20:36:07.000Z","size":296,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-25T22:12:40.256Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/browserless.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-06T20:43:09.000Z","updated_at":"2026-06-23T02:56:29.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/browserless/examples","commit_stats":null,"previous_names":["browserless/examples"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/browserless/examples","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/browserless%2Fexamples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/browserless%2Fexamples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/browserless%2Fexamples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/browserless%2Fexamples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/browserless","download_url":"https://codeload.github.com/browserless/examples/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/browserless%2Fexamples/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35028649,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-01T02:00:05.325Z","response_time":130,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-07-02T01:03:17.464Z","updated_at":"2026-07-02T01:03:26.536Z","avatar_url":"https://github.com/browserless.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Browserless Examples\n\nRunnable code examples for common [Browserless](https://docs.browserless.io/examples) use cases. \n\n## Getting Started\n\n1. **Get an API token:** sign up at [browserless.io](https://browserless.io) and grab your token from the [account dashboard](https://account.browserless.io).\n\n2. **Clone this repo**\n\n   ```bash\n   git clone https://github.com/browserless/examples.git\n   cd examples\n   ```\n\n3. **Pick an example:** browse the [Use cases](#use-cases) table below and open the folder for the task you want to run (e.g. `examples/take-a-screenshot`).\n\n4. **Set your token:** replace `YOUR_API_TOKEN_HERE` in the script with your actual API token.\n\n5. **Run it:** each example folder contains ready-to-run scripts. For example, to take a screenshot with cURL:\n\n   ```bash\n   bash examples/take-a-screenshot/rest/curl/screenshot.sh\n   ```\n\n   Or with Node.js:\n\n   ```bash\n   node examples/take-a-screenshot/frameworks/puppeteer/screenshot.mjs\n   ```\n\nEach example is self-contained. No shared dependencies to install.\n\n## Use cases\n\n| Use case | Description | Languages | Frameworks |\n| --- | --- | --- | --- |\n| [Auto-Accept Cookie Consent Banners](./examples/auto-accept-cookie-banners) | Detect and dismiss cookie consent banners before scraping or capturing a page | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Basic Playwright Connection](./examples/basic-playwright-connection) | Connect an existing Playwright script to Browserless by swapping `chromium.launch()` for `connectOverCDP()` | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/typescript/typescript-original.svg\" width=\"20\" height=\"20\" title=\"TypeScript\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e |\n| [Batch DOM Queries](./examples/batch-dom-queries) | Run multiple DOM queries in a single BQL request — all fields execute in the same browser session with no repeated page loads | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Browse Cloudflare Access-Protected Pages](./examples/browse-cloudflare-access-pages) | Access pages protected by Cloudflare Access zero-trust policies using Service Token headers or a saved authenticated profile | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/go/go-original.svg\" width=\"20\" height=\"20\" title=\"Go\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/php/php-original.svg\" width=\"20\" height=\"20\" title=\"PHP\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/ruby/ruby-original.svg\" width=\"20\" height=\"20\" title=\"Ruby\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e |\n| [Bulk Invoice Download](./examples/bulk-invoice-download) | Log into a sandbox vendor portal, list orders, and extract invoice download links | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Close a Session](./examples/close-session) | Terminate a BQL or Session API browser session when your automation is complete | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [E2E Testing](./examples/e2e-testing) | Run end-to-end tests against a live remote browser using Playwright, Puppeteer, or BQL | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Export a Slide Deck](./examples/export-slide-deck) | Export a Google Slides presentation as a PDF by navigating to its export URL | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Export Pages and Assets](./examples/export-pages-and-assets) | Export a page and all its linked resources (CSS, JS, images) as a ZIP file using the Browserless /export endpoint | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/go/go-original.svg\" width=\"20\" height=\"20\" title=\"Go\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/php/php-original.svg\" width=\"20\" height=\"20\" title=\"PHP\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/ruby/ruby-original.svg\" width=\"20\" height=\"20\" title=\"Ruby\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e |\n| [Fill a Job Application](./examples/fill-job-application) | Fill and submit a job application form on a sandbox career page | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Fill and Submit a Form](./examples/fill-and-submit-a-form) | Automate form interactions — typing into fields, selecting options, solving CAPTCHAs, and clicking submit | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Generate a PDF](./examples/generate-a-pdf) | Export any webpage or HTML content as a PDF using the Browserless PDF API | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Healthcare Portal Extraction](./examples/healthcare-portal-extraction) | Extract patient records from a sandbox healthcare portal dashboard | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Log In and Reuse Sessions](./examples/login-and-reuse-sessions) | Log in once and reuse that authenticated state across many browser sessions without re-entering credentials | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/go/go-original.svg\" width=\"20\" height=\"20\" title=\"Go\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/php/php-original.svg\" width=\"20\" height=\"20\" title=\"PHP\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/ruby/ruby-original.svg\" width=\"20\" height=\"20\" title=\"Ruby\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e |\n| [Log In via Email OTP](./examples/login-via-email-otp) | Automate login flows that send a one-time passcode to an email address — trigger the OTP, read the code, and enter it | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Log In with BQL and Browser Automation](./examples/login-with-bql-and-browser-automation) | Automate a login flow — filling credentials, solving CAPTCHAs, and handling post-login redirects | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Navigate After Click](./examples/navigate-after-click) | Click a link and wait for the resulting page navigation to complete before continuing | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Persist a Session](./examples/persist-session) | Save and restore browser state across requests for multi-step automation workflows | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Reconnect to a Browser](./examples/reconnect-to-a-browser) | Reattach to an existing running browser session after disconnecting | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Record a Browser Session](./examples/record-browser-session) | Capture a browser session as a `.webm` video file using the Browserless recording API | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e |\n| [Retry with Exponential Backoff](./examples/retry-backoff) | Implement retry logic with exponential backoff around Browserless requests to handle transient failures | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Route Traffic Through a Proxy](./examples/proxy) | Route browser sessions through a residential or custom proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Run Concurrent Browser Sessions](./examples/concurrent-browser-sessions) | Launch multiple independent browser sessions in parallel to speed up large-scale scraping or automation | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/go/go-original.svg\" width=\"20\" height=\"20\" title=\"Go\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/php/php-original.svg\" width=\"20\" height=\"20\" title=\"PHP\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/ruby/ruby-original.svg\" width=\"20\" height=\"20\" title=\"Ruby\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e |\n| [Save Logins to Authenticated Profiles](./examples/save-logins-to-authenticated-profiles) | Capture a logged-in browser state once and reuse it across parallel sessions without re-entering credentials | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/go/go-original.svg\" width=\"20\" height=\"20\" title=\"Go\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/php/php-original.svg\" width=\"20\" height=\"20\" title=\"PHP\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/ruby/ruby-original.svg\" width=\"20\" height=\"20\" title=\"Ruby\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e |\n| [Scrape Amazon](./examples/scrape-amazon) | Extract product listings from Amazon search results using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Booking.com](./examples/scrape-booking) | Extract hotel listings from Booking.com using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Etsy](./examples/scrape-etsy) | Search Etsy and extract product titles, prices, and links | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape GitHub Trending](./examples/scrape-github-trending) | Extract trending repositories from the GitHub trending page | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Glassdoor](./examples/scrape-glassdoor) | Extract job listings from Glassdoor using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Google Shopping](./examples/scrape-google-shopping) | Pull product results from Google Shopping search pages using stealth mode | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape IMDb](./examples/scrape-imdb) | Extract top-rated movies from the IMDb Top 250 chart using stealth mode | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Indeed](./examples/scrape-indeed-jobs) | Extract job listings from Indeed search results using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape LinkedIn Jobs](./examples/scrape-linkedin-jobs) | Extract job listings from LinkedIn search results using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape OpenTable](./examples/scrape-opentable) | Extract restaurant listings from OpenTable using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Realtor.com](./examples/scrape-realtor) | Extract property listings from Realtor.com using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Reddit](./examples/scrape-reddit) | Extract posts from a subreddit using stealth mode | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Ticketmaster](./examples/scrape-ticketmaster) | Extract event listings from Ticketmaster using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Walmart](./examples/scrape-walmart) | Extract product listings from Walmart search results using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Yelp](./examples/scrape-yelp) | Extract business listings from Yelp search results using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape YouTube](./examples/scrape-youtube) | Extract video results from YouTube search pages using stealth mode | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Scrape Zillow](./examples/scrape-zillow) | Extract property listings from Zillow using stealth mode and a residential proxy | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Solving Cloudflare Challenges](./examples/solve-cloudflare-challenges) | Bypass Cloudflare Turnstile and JS challenges using the `/unblock` endpoint or BQL's `solve` mutation | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/go/go-original.svg\" width=\"20\" height=\"20\" title=\"Go\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/php/php-original.svg\" width=\"20\" height=\"20\" title=\"PHP\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/ruby/ruby-original.svg\" width=\"20\" height=\"20\" title=\"Ruby\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Solving reCAPTCHAs](./examples/solve-recaptchas) | Automatically detect and solve reCAPTCHA v2, v3, invisible, and other CAPTCHA challenges during browser automation | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n| [Take a Screenshot](./examples/take-a-screenshot) | Capture any webpage as a PNG or JPEG using the Browserless screenshot API | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/bash/bash-original.svg\" width=\"20\" height=\"20\" title=\"Bash/cURL\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/nodejs/nodejs-original.svg\" width=\"20\" height=\"20\" title=\"Node.js\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/python/python-original.svg\" width=\"20\" height=\"20\" title=\"Python\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/java/java-original.svg\" width=\"20\" height=\"20\" title=\"Java\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/csharp/csharp-original.svg\" width=\"20\" height=\"20\" title=\"C#\" /\u003e | \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/chrome/chrome-original.svg\" width=\"20\" height=\"20\" title=\"Puppeteer\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/playwright/playwright-original.svg\" width=\"20\" height=\"20\" title=\"Playwright\" /\u003e \u003cimg src=\"https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/graphql/graphql-plain.svg\" width=\"20\" height=\"20\" title=\"BQL\" /\u003e |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrowserless%2Fexamples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrowserless%2Fexamples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrowserless%2Fexamples/lists"}