GitHub - codehornets/psychic: Data integration platform for LLMs. Connect to SaaS tools with turnkey auth and sync documents from N data sources with only one integration · GitHub
Skip to content
codehornetsPublic
forked from aspenmayer/Buff

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

 
 

Repository files navigation

🦊 Finic

A fleet of stealth browsers at your fingertips.

License Issues

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"

async def main():
    print("Connecting to Browser...")
    async with async_playwright() as pw:
        browser = await pw.chromium.connect_over_cdp(CDP_URL)
        try:
            print("Connected! Navigating...")
            page = await browser.new_page()
            await page.goto("https://example.com", timeout=2 * 60 * 1000)
            print("Navigated! Scraping page content...")
            html = await page.content()
            print(html)
        finally:
            await browser.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