Skip to content

Repository files navigation

🦊 Finic

A fleet of stealth browsers at your fingertips.

LicenseIssues

Finic provides browser infrastructure for developers building web scrapers, browser automations, and AI agents in Python. It does this by giving you a browser in the cloud you can control remotely using Playwright or Puppeteer (in just a few lines), or Selenium (with some work).

Finic is designed to be unopionated about the development process, and simply provide browser and network-level utilities to make sure your automations don't get blocked.

Quickstart

git clone https://github.com/finic-ai/finic.git

Running Locally

Run the image locally the same as any other Docker container.

sudo docker-compose up --build

Once the container is running, you can connect to it like this.

CDP_URL="ws://localhost:8000/ws"asyncdefmain():
print("Connecting to Browser...")
asyncwithasync_playwright() aspw:
browser=awaitpw.chromium.connect_over_cdp(CDP_URL)
try:
print("Connected! Navigating...")
page=awaitbrowser.new_page()
awaitpage.goto("https://example.com", timeout=2*60*1000)
print("Navigated! Scraping page content...")
html=awaitpage.content()
print(html)
finally:
awaitbrowser.close()
asyncio.run(main())

Or run python testscript.py to test out the container.

If you want to use a Finic browser with an existing project, simply replace this line:

browser=playwright.chromium.launch(headless=False)

with this one: with this:

browser = playwright.chromium.connect_over_cdp("ws://localhost:8080/ws")

About

Data integration platform for LLMs. Connect to SaaS tools with turnkey auth and sync documents from N data sources with only one integration

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages