Задать вопрос
igorsavinkin
@igorsavinkin
Web Developer

Как автоматизировать работу с сайтом используя Camoufox библиотеку?

1. Python/Playwright открывает Camoufox браузер (похоже внутри некого сервера) на определённом порту — ✅

for i, (port, path, name) in enumerate(zip(config["ports"], config["paths"], config["names"])):
 # Create server thread
 server_thread = threading.Thread(target=run_server, args=(port, path))
 servers.append(server_thread)

 # Create browser automation thread
 browser_url = f"ws://localhost:{port}/{path}"
 browser_thread = threading.Thread(
     target=automate_browser, 
     args=(browser_url, name)
 )
 browser_automations.append(browser_thread)

 # Start all servers with delays
 print(f"Starting {len(servers)} servers...")
 for i, server in enumerate(servers):
     print(f"Starting server {i+1} on port {config['ports'][i]}...")
     server.start()
     time.sleep(config["server_settings"]["start_delay"])

 print("All servers started. Starting browser automation...")

 # Start all browser automations with delays
 for i, browser_automation in enumerate(browser_automations):
     browser_automation.start()
     if i < len(browser_automations) - 1:  # Don't sleep after the last one
     time.sleep(config["server_settings"]["browser_delay"])

Выходит что `browser_url` будет такой: `ws://localhost:2525/browser2525`, где `2525` - некий порт для последующего подключения (для примера).

2. Вручную логинюсь в google и Midjourney (на основе google логина) — ✅
Этот Camoufox браузер должен оставаться работающим долгое время чтобы другие скрипты могли к нему подключаться и работать с ним.

3. Другим скриптом пытаюсь подключиться к открытому браузеру — ❌

async def connect_to_session(self, port): 
 if not await self.check_camoufox_availability(port):
     raise Exception(f"Camoufox WebSocket port {port} not accessible")

 ws_url = f"ws://localhost:{port}/browser{port}"

 browser = await self.playwright.firefox.connect(ws_url)


ws_url (Web Socket URL) идентична browser_url в коде пункта 1

Но при выполнении кода Playwright не подключается к существующему открытому браузеру а запускает новый, соответственно БЕЗ контекта, пустой...

Camoufox is a stealthy, customized Firefox browser designed specifically for web scraping and bot detection evasion.
  • Вопрос задан
  • 51 просмотр
Подписаться 2 Сложный Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы