Lumaktaw sa nilalaman

Awtomasyon

Puppeteer at Playwright, diretso sa mga profile mo

Bawat bukas na profile ay may sariling debug address. Ikonekta ang sarili mong code sa mismong profile na iyon: may sarili nitong fingerprint, cookies, at proxy. Kasama sa lahat ng plano, pati sa libre.

  1. 1Buksan ang local interface sa app: settings, seksyong «Local API». Kopyahin ang susi.
  2. 2Hilingin na magbukas ng profile. Ang sagot ay isang address na sa kanya lang.
  3. 3Ikonekta ang code mo sa address na iyon na parang ordinaryong browser.
  4. 4Magtrabaho gaya ng dati. Nakalagay na ang fingerprint, cookies at proxy.

JavaScript (puppeteer-core)

const puppeteer = require('puppeteer-core');

(async () => {
  // 1. Ask the app for this profile's debugging endpoint.
  const started = await fetch(
    'http://127.0.0.1:50325/api/v1/browser/start?profileId=YOUR_PROFILE_ID',
    { method: 'POST', headers: { 'x-api-token': 'YOUR_API_TOKEN' } },
  ).then((r) => r.json());

  // 2. Attach to it like to any other browser.
  const browser = await puppeteer.connect({
    browserWSEndpoint: started.data.ws,
    defaultViewport: null,
  });

  const [page] = await browser.pages();
  await page.goto('https://example.com');
})();

Python (Playwright)

import requests
from playwright.sync_api import sync_playwright

# 1. Ask the app for this profile's debugging endpoint.
started = requests.post(
    "http://127.0.0.1:50325/api/v1/browser/start",
    params={"profileId": "YOUR_PROFILE_ID"},
    headers={"x-api-token": "YOUR_API_TOKEN"},
).json()

# 2. Attach to it like to any other browser.
with sync_playwright() as p:
    browser = p.chromium.connect_over_cdp(started["data"]["ws"])
    page = browser.contexts[0].pages[0]
    page.goto("https://example.com")

Isang bagay na dapat malaman bago kumonekta

Puppeteer and Playwright turn on Runtime.enable and Page.enable the moment they attach. Runtime.enable puts observers inside Chromium that page scripts can notice. Our own automation builder never turns it on. It turns on Page.enable only while a flow runs, on the tabs the flow uses, so it can answer a page's alert or confirm; a test page that looks for traces saw nothing from it on either engine. If the site you work with checks for this, build the sequence in the app instead.

O gawin ito nang walang kahit isang linya ng code

Labing-anim na uri ng hakbang sa isang window: buksan, pindutin, mag-type, maghintay, magbasa, magsanga. Walang matutukoy na tagamasid, at walang ii-install.

Tingnan ang kaya ng app