はじめに
リクエストワークフロー
- タスクの送信
/api/v1/scraper/request
にPOST
リクエストを送信します。 - レスポンスの処理
- HTTP 200 (成功): データはレスポンスボディに直接返されます。
- HTTP 201 (処理中): 提供された
taskId
を使用して結果をポーリングします。
- 結果のポーリング
非同期タスクの場合、データの準備が整うまで (HTTP 200)、
/api/v1/scraper/result/{taskId}
を繰り返し呼び出します。
HTTP ステータスコード
コード | 意味 | アクション |
---|---|---|
200 | 成功 | レスポンスボディのデータを使用します。 |
201 | タスク処理中 | /result/{taskId} をポーリングします (推奨間隔: 1~5秒)。 |
400 | 無効なパラメータ | タスクパラメータが有効かどうかを確認してください。 |
429 | レート制限超過 | リクエスト頻度を減らすか、クォータ調整のためにサポートにお問い合わせください。 |
500 | 内部サーバーエラー | 1分後に再試行します。永続する場合はサポートにお問い合わせください。 |
コード例
完全なワークフロー
import { Scrapeless, log } from '@scrapeless-ai/sdk';
const client = new Scrapeless({
apiKey: 'YOUR_API_KEY',
});
async function runTask() {
const result = await client.scraping.scrape({
{
actor: 'scraper.shopee',
input: {
url: 'https://shopee.tw/a-i.10228173.24803858474'
}
},
});
return result;
}
runTask()
.then(data => {
console.log('Data:', data);
})
.catch(error => {
console.error('Error:', error);
});
cURL (ポーリング例)
curl --location --request GET 'https://api.scrapeless.com/api/v1/scraper/result/30681c8b-bfd3-48eb-a7c9-006e40b00591' \
--header 'x-api-token: YOUR_API_KEY' \
--header 'Content-Type: application/json'
パラメータ
パラメータ | タイプ | 説明 |
---|---|---|
actor | string | スクラピングサービス (例: scraper.shopee)。 |
input | object | タスク固有のパラメータ (例: action、url)。 |
proxy | object | 国のフィールドを含むオプションのプロキシ設定。 |
注意点
- ポーリングに関する推奨事項
- 間隔: 1~5秒。
- タイムアウト: 最大再試行回数 (例: 10回) を設定します。
- デバッグのヒント
- まずは単純なURLでテストします。