Browser特徴セッションリプレイ

セッション再生

セッション再生機能を使用すると、実行されたアクションとネットワークリクエストを検査できます。この機能により、記録されたセッションを再生し、実行されたアクションとネットワークリクエストの詳細なページごとの調査を可能にします。

利点

✅ リアルタイム記録 – スクリプト実行中のすべてのネットワークリクエストを自動的にログ記録

✅ フレーム単位の再生 – ブラウザアクションを正確にトレース

✅ チームコラボレーション – セッション記録を簡単に共有してチームでデバッグ

✅ ミリ秒単位の精度 – イベントレベルのタイムスタンプを検査して、スクリプトの調整を強化

✅ セキュアな分離 – セッションデータは暗号化され、きめ細かいアクセス制御によって保護されています

✅ 軽量なフォーマット – rrweb対応のDOM差分処理により、録画ファイルはビデオファイルよりも90%小さくなります

使用方法

Scrapelessブラウザセッションの作成

タイプ1:Playgroundを使用したセッション記録の作成

Playgroundでは、パラメーター設定によってセッション記録がデフォルトで有効になっています。

image1.png

Playgroundの設定でセッション記録を有効にすることもできます。 ただし、「Playground設定を使用」オプションを有効にすると、Playgroundコード内の接続パラメータが上書きされることに注意してください

image2.png

設定後、「実行」をクリックして記録を開始します。

タイプ2:APIを使用したセッション記録の作成

API経由で他のプロジェクトにセッション機能を接続し、コードでセッションパラメータを設定することもできます。

記録を有効にするには、クエリパラメータsession_recordingtrueに設定します。デフォルト値はfalseです。session_nameパラメータを使用してセッション名を設定することもできます。これにより、セッションリストでセッションをすばやく見つけることができます。

image3.png

詳細なドキュメントについては、Scraping Browser API ドキュメントを参照してください。コード例を以下に示します。

const { Scrapeless } = require('@scrapeless-ai/sdk');
const puppeteer =require('puppeteer-core');
const client = new Scrapeless({ apiKey: 'API Key' });
 
// custom fingerprint
const fingerprint = {
    platform: 'Windows',
}
 
// Create browser session and get WebSocket endpoint
const { browserWSEndpoint } = client.browser.create({
    session_name: 'sdk_test',
    session_ttl: 180,
    proxy_country: 'US',
    session_recording: true,
    fingerprint,
});
 
(async () => {
    const browser = await puppeteer.connect({browserWSEndpoint});
    const page = await browser.newPage();
 
    await page.goto('https://www.scrapeless.com');
    await new Promise(res => setTimeout(res, 3000));
 
    await page.goto('https://www.google.com');
    await new Promise(res => setTimeout(res, 3000));
 
    await page.goto('https://www.youtube.com');
    await new Promise(res => setTimeout(res, 3000));
 
    await browser.close();
})();

再生の表示

ブラウザの実行が完了すると、セッション記録が自動的に保存されます。セッション履歴リストをクリックして表示します。

image4.gif

制限事項

💡 セッション記録は、ブラウザでのユーザーの視覚的なエクスペリエンスのみに焦点を当てており、基盤となるサーバーアクティビティ、データベースの相互作用、ページ構造(DOM)に反映されない技術的な変更は含まれません。

💡 WebGLやcanvasなどのテクノロジーを使用して構築された複雑なアニメーションは、セッション記録で完全に忠実に再現されない場合があります。