{"repo":"lino-levan/astral","free":true,"listed":false,"github":"https://github.com/lino-levan/astral","clone":"git clone https://github.com/lino-levan/astral.git","description":"A high-level puppeteer/playwright-like library for Deno","language":"TypeScript","stars":354,"topics":["astral","deno","playwright","puppeteer"],"license":"MIT","category":"scrapers-browser-automation","readme_excerpt":"Astral is a high-level puppeteer/playwright-like library that allows for control over a web browser (primarily for automation and testing). It is written from scratch with Deno in mind. Usage Take a screenshot of a website. You can use the evaluate function to run code in the context of the browser. You can navigate to a page and interact with it. TODO: Document the locator API. Advanced Usage If you already have a browser process running somewhere else or you're using a service that provides remote browsers for automation (such as browserless.io), it is possible to directly connect to its endpoint rather than spawning a new process. If you'd like to instead re-use a browser that you already launched, astral exposes the WebSocket endpoint through browser.wsEndpoint() . Page authenticate authenticate example code: BYOB - Bring Your Own Browser Essentially the process is as simple as running a chromium-like binary with the following flags: Technically, only the first flag is necessary, though I've found that these flags generally get the best result. Once your browser process is running, connecting to it is as simple as FAQ Launch FAQ \"No usable sandbox!\" with user namespace cloning enabled Ubuntu 23.10+ (or possibly other Linux distros in the future) ship an AppArmor profile that applies to Chrome stable binaries installed at /opt/google/chrome/chrome (the default installation path). This policy is stored at /etc/apparmor.d/chrome. This AppArmor policy prevents Chrome for Test","default_branch":null,"files":null,"tree":[],"storefront":"/r/lino-levan","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/lino-levan/astral/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}