APIリクエスト
ウェブページをスクレイピングするには、Web Scraping APIのベースエンドポイントに対して、api_keyと対象のurlを指定してGETリクエストを送信します。追加のオプションパラメータを使用することで、レンダリング、プロキシタイプ、ジオロケーション、タイムアウトなどを制御できます。
Endpoint
Section titled “Endpoint” GET https://scrape.shifter.io/v1?api_key=YOUR_API_KEY&url=<TARGET_URL>
Parameters
Section titled “Parameters”| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | yes | Web Scraping APIのアクセスキーです。アカウントダッシュボードで確認できます。 |
url | string | yes | スクレイピング対象のURLです。 |
render_js | integer | no | 0(デフォルト)または1。ヘッドレスブラウザによるJavaScriptレンダリングを有効にします。データセンターの場合は5APIコール、レジデンシャルの場合は25APIコールを消費します。 |
proxy_type | string | no | datacenter(デフォルト)またはresidential。レジデンシャルはJSレンダリングなしで10コール、ありで25コールを消費します。 |
country | string | no | プロキシのジオロケーション用の2文字の国コードです。対応リストはプロキシタイプによって異なります。 |
keep_headers | integer | no | カスタムリクエストヘッダーを渡す場合は1、指定したものだけを使用する場合は0を指定します。 |
session | integer | no | 同じセッション番号を再利用することで、複数のリクエストにわたって同じプロキシIPを使い回します。最後の使用から5分後に有効期限が切れます。 |
timeout | integer | no | ミリ秒単位の最大リクエスト時間です。最大60000。タイムアウトが発生するまでに取得できたHTMLをAPIが返します。 |
device | string | no | desktop(デフォルト)、mobile、またはtablet。 |
wait_until | string | no | 高度な設定。レンダリングが完了したとみなす条件です。render_js=1が必要です。 |
wait_for | integer | no | 高度な設定。ページ読み込み後に待機するミリ秒数です。推奨値は5000〜10000です。render_js=1が必要です。 |
wait_for_css | string | no | 高度な設定。CSSセレクタが出現するまで最大10秒間待機します。render_js=1が必要です。 |
screenshot | integer | no | 高度な設定。1に設定するとスクリーンショットを返します。render_js=1が必要です。 |
screenshot_options | object | no | 高度な設定。スクリーンショットの寸法とfull_pageを制御します。 |
extract_rules | string | no | 高度な設定。CSS抽出ルールを記述したURLエンコード済みのJSONです。 |
disable_stealth | integer | no | 高度な設定。1に設定するとデフォルトのステルスプラグインを無効化します。render_js=1が必要です。 |
auto_parser | integer | no | 高度な設定。1に設定するとHTMLの代わりにパース済みのJSONを返します。 |
js_instructions | string | no | 高度な設定。スクレイピング前に実行するアクションのURLエンコード済みJSON配列です。render_js=1が必要です。 |
binary_response | integer | no | 1に設定すると、base64エンコードされたバイナリファイル(PDFや画像など)を返します。 |
Example request
Section titled “Example request”curl "https://scrape.shifter.io/v1?api_key=YOUR_API_KEY&url=https://httpbin.org/get"import requests
r = requests.get("https://scrape.shifter.io/v1", params={ "api_key": "YOUR_API_KEY", "url": "https://httpbin.org/get",})print(r.text)import fetch from 'node-fetch';
const url = 'https://scrape.shifter.io/v1?' + new URLSearchParams({ api_key: 'YOUR_API_KEY', url: 'https://httpbin.org/get',});const res = await fetch(url);console.log(await res.text());See also
Section titled “See also”- 基本的なリクエスト - 最小限の例
- JavaScriptのレンダリング
- プロキシ
- APIエラー