Ваш скрипт Playwright, Puppeteer или Python входит один раз. Gologin Cloud Browser хранит логин в профиле с тем же устройством и тем же резидентным IP, поэтому каждый следующий запуск начинается уже в аккаунте. Сайт видит вернувшегося пользователя, а не новое устройство, которое нужно проверить.
Бесплатный старт, без карты. Резидентные IP включены.
Cookies, отпечаток устройства и резидентный IP возвращаются вместе при каждом запуске, поэтому на 40-м запуске портал видит того же вернувшегося пользователя, что и на первом, а не новое устройство, которое просит подтверждения.
Скрипт входит один раз, человек вводит код подтверждения в живой сессии, и профиль сохраняется.
То же устройство, тот же адрес, тот же аккаунт. Экрана входа нет, поэтому скрипт сразу переходит к работе.
Ничего не изменилось. Всё это время один аккаунт на одном и том же устройстве, поэтому порталу нечего проверять заново.
Хотите разобраться в механике? Прочитайте, как подключить профиль, а затем создайте первый.
Скрипту, который входит в аккаунт, между запусками нужны две вещи: логин, который не слетает, и браузер, который продолжает работать. Вот кто за что отвечает.
| Что вы получаете | Свой сервер | Browserbase | Browserless | |
|---|---|---|---|---|
| Вход сохранён при следующем запуске | Да | Делаете сами | Да | До 7 дней |
| Тот же резидентный IP при следующем запуске | Да | Нет | Не опубликовано | Не опубликовано |
| Самая длинная сессия, первый платный тариф | Без лимита | Без лимита | 6 часов | 15 минут |
| Chrome, который нужно устанавливать и обновлять | Не нужен | Ваш | Не нужен | Не нужен |
| Человек может подключиться по ссылке | Да | Нет | Да | Да |
| Резидентный трафик | $1/ГБ | Отдельный провайдер | $12/ГБ | $12/ГБ |
| Первый платный тариф | $4.50 в месяц | Стоимость сервера | $20 в месяц | $25 в месяц при оплате за год |
Собираете данные, а не работаете с ними? Смотрите Динамический парсинг.
Маркетплейсы, рекламные платформы и порталы проверяют каждый вход. Gologin при каждом запуске возвращает то же устройство, IP и логин.
Обновляйте цены, остатки и карточки товаров в аккаунте продавца Amazon, eBay или Etsy теми же шагами, которые ваша команда делает вручную.
Оформляйте повторные заказы или бронируйте слоты на сайтах поставщиков, путешествий и бронирования, у которых есть только веб-страница.
Скачивайте отчёты из рекламных кабинетов и инструментов аналитики, которые ограничивают свой API или берут за него плату.
Переносите заказы, счета или записи из своей системы в портал поставщика или госпортал, поле за полем.
Заполняйте и отправляйте одну и ту же многошаговую форму для каждой строки таблицы и проверяйте результат после каждого шага.
Переносите записи между старым веб-инструментом и вашей CRM, когда у одной из сторон нет API.
Подключите скрипт одной строкой. Первый запуск выполняет вход, а каждый следующий проверяет, что профиль всё ещё в аккаунте, и сразу переходит к работе. Код ниже запускался дважды на публичном учебном сайте: в первый раз выполнил вход, во второй уже был в аккаунте.
Зарегистрируйтесь через Google и скопируйте ключ в панели управления. Бесплатно, без карты.
Один клик в панели управления или один вызов API. Профиль хранит устройство, IP и логин.
Запустите скрипт со своим токеном и ID профиля. Первый запуск выполняет вход и выводит «Signed in», второй открывается уже в аккаунте и выводит «Already signed in». Подробнее в руководстве по началу работы.
npm install playwright-coreGOLOGIN_TOKEN=your_token GOLOGIN_PROFILE_ID=your_profile_id node login.mjswss://cloudbrowser.gologin.com/connect?token=…&profile=…import { chromium } from "playwright-core";
const token = process.env.GOLOGIN_TOKEN;
const profileId = process.env.GOLOGIN_PROFILE_ID;
const endpoint = `wss://cloudbrowser.gologin.com/connect?token=${token}&profile=${profileId}`;
const browser = await chromium.connectOverCDP(endpoint);
const page = await browser.contexts()[0].newPage();
await page.goto("http://quotes.toscrape.com/");
const signedIn = await page.locator("a[href='/logout']").isVisible();
if (!signedIn) {
await page.goto("http://quotes.toscrape.com/login");
await page.fill("#username", "demo");
await page.fill("#password", "demo");
await page.click("input[type=submit]");
await page.waitForSelector("a[href='/logout']");
}
const first = await page.locator(".quote .text").first().textContent();
console.log(signedIn ? "Already signed in" : "Signed in", "|", first);
await page.close();
await browser.close();npm install puppeteer-coreGOLOGIN_TOKEN=your_token GOLOGIN_PROFILE_ID=your_profile_id node login.mjswss://cloudbrowser.gologin.com/connect?token=…&profile=…import puppeteer from "puppeteer-core";
const token = process.env.GOLOGIN_TOKEN;
const profileId = process.env.GOLOGIN_PROFILE_ID;
const endpoint = `https://cloudbrowser.gologin.com/connect?token=${token}&profile=${profileId}`;
const browser = await puppeteer.connect({ browserWSEndpoint: endpoint });
const page = await browser.newPage();
await page.goto("http://quotes.toscrape.com/");
const signedIn = (await page.$("a[href='/logout']")) !== null;
if (!signedIn) {
await page.goto("http://quotes.toscrape.com/login");
await page.type("#username", "demo");
await page.type("#password", "demo");
await Promise.all([page.waitForNavigation(), page.click("input[type=submit]")]);
await page.waitForSelector("a[href='/logout']");
}
const first = await page.$eval(".quote .text", (el) => el.textContent);
console.log(signedIn ? "Already signed in" : "Signed in", "|", first);
await page.close();
await browser.disconnect();pip install playwrightGOLOGIN_TOKEN=your_token GOLOGIN_PROFILE_ID=your_profile_id python login.pywss://cloudbrowser.gologin.com/connect?token=…&profile=…import os
from playwright.sync_api import sync_playwright
token = os.environ["GOLOGIN_TOKEN"]
profile_id = os.environ["GOLOGIN_PROFILE_ID"]
endpoint = f"wss://cloudbrowser.gologin.com/connect?token={token}&profile={profile_id}"
with sync_playwright() as p:
browser = p.chromium.connect_over_cdp(endpoint)
page = browser.contexts[0].new_page()
page.goto("http://quotes.toscrape.com/")
signed_in = page.locator("a[href='/logout']").is_visible()
if not signed_in:
page.goto("http://quotes.toscrape.com/login")
page.fill("#username", "demo")
page.fill("#password", "demo")
page.click("input[type=submit]")
page.wait_for_selector("a[href='/logout']")
first = page.locator(".quote .text").first.text_content()
print("Already signed in" if signed_in else "Signed in", "|", first)
page.close()
browser.close()На каждом тарифе работает один и тот же браузер, резидентные IP включены. Тарифы различаются часами работы браузера и числом параллельных сессий.
$0
Без привязки карты
$4.50/мес
Для соло-разработки
$8/мес
Для растущих команд
$14/мес
Для критичных задач
Нужно больше одновременно? Добавьте параллельные сессии к любому тарифу за $2 в месяц за каждую, сколько нужно. Трафик прокси сверх лимита стоит $1/ГБ.
От 4 параллельных сессий, с персональным менеджером, премиальным SLA и индивидуальным онбордингом.
Один аккаунт, одна прокси-сеть, одна экосистема. Выберите продукт под задачу.
Веб-автоматизация, или автоматизация браузера, - это программа, которая выполняет на сайте клики и ввод текста вместо человека: входит в аккаунт, заполняет формы, читает страницы, переносит данные между инструментами. Разработчики пишут её на библиотеках вроде Playwright, Puppeteer или Selenium, и она работает в браузере по расписанию.
Для автоматизации задач в браузере через код сегодня обычно выбирают Playwright, а Puppeteer - для работы только с Chrome. Библиотека определяет, как вы пишете шаги, а браузер, которым она управляет, определяет, сохранится ли логин. Gologin Cloud Browser запускает скрипты Playwright и Puppeteer после изменения одной строки.
Храните логин в профиле, а не в файле. Storage state в Playwright сохраняет cookies, но сайт, который видит их с нового IP или устройства, часто снова просит подтверждение. Профиль Gologin возвращает cookies вместе с тем же устройством и резидентным IP, поэтому следующий запуск открывается с сохранённым логином.
Запуск ждёт на странице ввода кода. Откройте ссылку Live View сессии, введите код, и скрипт продолжит работу в том же профиле с сохранённым логином. Смотрите Cloud Browser UI.
Да, через планировщик, которым вы уже пользуетесь: cron, GitHub Actions или очередь задач запускает скрипт, и скрипт каждый раз подключается к тому же профилю. Ограничения на длительность сессии нет; сессия, которая простаивает 20 минут, закрывается сама, так что ничего не остаётся запущенным.
Да. Браузер работает в облаке Gologin без окна на вашем компьютере, а для скрипта это и есть headless. Чтобы посмотреть запуск, откройте его ссылку Live View. Смотрите API headless-браузера.
Нет. Браузер работает в облаке Gologin, а ваш скрипт только подключается к нему: не нужно устанавливать, обновлять или перезапускать Chrome и подбирать память на сервере.
Да. Python Playwright подключается через connect_over_cdp, а на вкладке Python выше есть полный скрипт. Установите его командой pip install playwright; скачивать браузер локально не нужно.
Подключите скрипт Playwright, Puppeteer или Python одной строкой и дайте каждому аккаунту свой профиль: то же устройство, тот же IP и тот же логин при каждом запуске.
Бесплатный старт, без карты. Резидентные IP включены.