Une flotte de navigateurs furtifs à portée de main.
Finic fournit une infrastructure de navigateur pour les développeurs qui construisent des grattoirs Web, des automations de navigateur et des agents d'IA à Python. Il le fait en vous donnant un navigateur dans le cloud que vous pouvez contrôler à distance en utilisant le dramaturge ou le marionnettiste (en quelques lignes) ou le sélénium (avec un peu de travail).
Finic est conçu pour ne pas être optionné sur le processus de développement et simplement fournir des utilitaires de navigateur et de réseau pour vous assurer que vos automatisations ne sont pas bloquées.
git clone https://github.com/finic-ai/finic.git
Exécutez l'image localement de la même manière que n'importe quel autre conteneur Docker.
sudo docker-compose up --build
Une fois le conteneur en cours d'exécution, vous pouvez vous connecter comme celui-ci.
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 ())
Ou exécutez python testscript.py
pour tester le conteneur.
Si vous souhaitez utiliser un navigateur final avec un projet existant, remplacez simplement cette ligne:
browser = playwright . chromium . launch ( headless = False )
avec celui-ci: avec ceci:
browser = playwright.chromium.connect_over_cdp("ws://localhost:8080/ws")