ブラウザ拡張機能
カスタマイズされたブラウザ拡張機能を使用して、Scrapeless でブラウジング エクスペリエンスとセッションを強化します。
APIs
- 拡張機能のアップロード:
POST /extensions/upload
- 拡張機能の更新:
PUT /extensions/{extensionId}
- 拡張機能の削除:
DELETE /extensions/{extensionId}
- 拡張機能リストの取得:
GET /extensions/list
- 拡張機能情報の取得:
GET /extensions/{extensionId}
詳細は、API ドキュメントを参照してください。
ブラウザ拡張機能の設定
extension_ids
パラメータを使用して、ブラウザ拡張機能を設定する拡張機能IDを指定します。複数の拡張機能IDを指定する場合は、コンマで区切ります。
例: extension_ids=extension_id1,extension_id2
拡張機能の例
次のコード例は、API を介して MetaMask 拡張機能をアップロードし、ブラウザの起動時にロードするように指定する方法を示しています。
// npm install @scrapeless-ai/sdk puppeteer-core
import { Scrapeless } from '@scrapeless-ai/sdk';
import puppeteer from 'puppeteer-core';
const API_TOKEN = 'API Key'; // APIキーを置き換えてください
const EXTENSION_FILE_PATH = '/extensions/metamask-chrome-12.20.0.zip'; // 拡張機能のzipファイルパスを置き換えてください
const client = new Scrapeless({ apiKey: API_TOKEN });
const { browser: scrapingBrowser } = client;
(async () => {
try {
const uploadResponse = await scrapingBrowser.extension.upload(EXTENSION_FILE_PATH, 'metamask'); // 拡張機能名
const extensionId = uploadResponse?.extensionId;
const { browserWSEndpoint } = scrapingBrowser.create({
session_name: 'use-extension',
session_ttl: 180,
extension_ids: extensionId, // ブラウザ拡張機能を設定します。複数の拡張機能の場合はコンマで区切ります
});
const browser = await puppeteer.connect({
browserWSEndpoint,
defaultViewport: null
});
const page = await browser.newPage();
await page.goto('chrome://extensions/');
await page.screenshot({
path: 'extensions-screenshot.png',
fullPage: true
});
await browser.close();
} catch (error) {
console.error('Error:', error.response?.data || error.message);
}
})()
chrome://extensions
ページにアクセスして、拡張機能が正常にロードされたかどうかを確認できます。
結果は以下のようになります。