実戦ケース集
この章では、実際のプロジェクトにそのまま流用できる 5 つのスクリプトテンプレートを紹介します。
ケース 1:自動ログインと状態の維持
javascript
// JavaScript 版
async function autoLogin() {
// 環境の起動(中略)
const browser = await chromium.connectOverCDP(wsEndpoint);
const context = browser.contexts()[0];
const page = context.pages()[0] || await context.newPage();
try {
await page.goto('https://example.com/login');
await page.getByLabel('メールアドレス').fill('user@email.com');
await page.getByLabel('パスワード').fill('password123');
await page.getByRole('button', { name: 'ログイン' }).click();
// ログイン完了の兆候を待機
await page.waitForURL('**/dashboard');
console.log('✅ ログイン成功!');
} finally {
await browser.close();
}
}ケース 2:Cookie 注入によるログインのバイパス
javascript
// 事前に取得した Cookie を注入して直接アクセス
await context.addCookies([
{ name: 'session_id', value: 'SID_123', domain: '.example.com', path: '/' }
]);
await page.goto('https://example.com/dashboard');ケース 3:ネットワーク傍受によるデータ収集
javascript
// API のレスポンスを直接キャッチして JSON を取得
page.on('response', async response => {
if (response.url().includes('/api/products') && response.status() === 200) {
const json = await response.json();
console.log(`📦 商品データを取得: ${json.list.length} 件`);
}
});ケース 4:マルチアカウントの並列実行
JavaScript の Promise.all を使用して、複数の Mbbrowser 環境を同時に制御し、処理効率を劇的に向上させます。
IMPORTANT
メモリ管理のヒント: 並列実行数は、ハードウェアのメモリ容量に依存します。16GB 搭載なら 10〜15 環境程度を目安にしてください。
TIP
🎉 おめでとうございます!これで Mbbrowser + Playwright の自動化技術スタックを完全にマスターしました。 公式ドキュメントも併せて参照してください:playwright.dev
