ドキュメントブラウザーと CrawlAgent Browserプロファイル

プロファイル

プロファイルを使用すると、ストレージ、Cookie、キャッシュ、ログイン状態などのユーザー データを複数のセッションにわたって保持できます。これにより、自動化がスムーズになり、認証が簡素化され、パフォーマンスが最適化されます。

主な利点

  • ブラウザ履歴の再利用:ユーザーはセッション間でブラウジング履歴を再利用できます。
  • ログイン状態の維持:特定のサイトにログインした状態を維持し、再認証の必要性を減らします。
  • ページ読み込み速度の向上:ウェブページの読み込み速度を向上させます。
  • ボット検出リスクの低減:ボットとして検出される可能性を低下させます。

プロファイルの使用方法

1. プロファイルの作成

まず、プロファイルのAPIを使用して新しいプロファイルを作成します。返された profileId をメモしてください。このIDを後で新しいセッションにプロファイルを割り当てるために使用します。

import { ScrapelessClient } from '@scrapeless-ai/sdk';
 
const client = new ScrapelessClient({ apiKey: 'API Key' });
const createResponse = await client.profiles.create('My Profile');
console.log('Profile created:', createResponse);

2. プロファイルの使用

プロファイルを作成したら、新しいセッションにそのプロファイルを追加してデータを再利用できます。セッション構成で profileId を指定することで、プロファイルを割り当てます。

import { ScrapelessClient } from '@scrapeless-ai/sdk';
 
const client = new ScrapelessClient({ apiKey: 'API Key' });
const { browserWSEndpoint } = client.browser.create({
    sessionName: 'My Browser',
    sessionTTL: 30000,
    profileId: 'your-profile-id',
});
 
(async () => {
    const browser = await puppeteer.connect({browserWSEndpoint});
    const page = await browser.newPage();
    await page.goto('https://www.scrapeless.com');
    console.log(await page.title());
    await browser.close();
})();

新しいセッションでプロファイルデータを更新したい場合は、プロファイルオブジェクト内でprofilePersist: trueを設定する必要があります。これは新しいプロファイルをセッションで初めて使用するときに設定することで、そのデータが後続の使用のために保存されることを保証します。

const { browserWSEndpoint } = client.browser.create({
    sessionName: 'My Browser',
    sessionTTL: 30000,
    profileId: 'your-profile-id',
    profilePersist: true,
});
Why Use persist?

デフォルトでは、コンテキストは以前のセッションで保存されたデータを読み込みますが、更新はしません。新しいクッキー、認証トークン、またはキャッシュされたデータを保存する必要がある場合は、セッション作成時に profilePersist: true を設定する必要があります。データはセッション終了時に保存されます。これにより、ログイン、サイトの設定保存、アセットのキャッシュなど、セッション中に変更した内容が将来のセッションに引き継がれ、セッション終了時に失われることはありません。

3. プロファイルの取得

IDを指定して特定のプロファイルを取得するか、クエリパラメータを使用して作成済みのすべてのプロファイルを一覧表示できます。スキーマとパラメータの完全な仕様については、 ProfileAPIリファレンス を参照してください。

// get a specific profile
const profile = await client.profiles.get('your-profile-id');
 
// get profile list
const profiles = await client.profiles.list({ page: 1, pageSize: 10 });
Note

profilePersist: true が有効な場合、最後に終了したセッションからのみデータが保存されます。

4. 複数のセッション間でプロファイルを共有

複数のセッションで同じプロファイルを共有したい場合、デフォルト設定の profilePersist: false により、変更を加えることなく、複数のセッションで以前のプロファイル構成を再利用できます。これらのセッション内でプロファイルを更新したい場合は、永続化を有効にする必要があります。

const { browserWSEndpoint } = client.browser.create({
    sessionName: 'My Browser',
    sessionTTL: 30000,
    profileId: 'your-profile-id',
});

注意:profilePersist: trueが有効の場合、最後に終了したセッションからのデータのみが保存されます。

5. プロファイルの削除

使用していないプロファイルを削除してリソースを解放してください。削除されたプロファイルは、今後どのセッションにも割り当てられなくなります。

const deleteResponse = await client.profiles.delete('your-profile-id');

👉 プロファイルに関する例やコードサンプルについては、 製品アップデート|新しいプロファイル機能をご覧ください。