Forcer les délais d'expiration
Certaines pages conservent quelques nœuds DOM en cours de chargement longtemps après que le contenu principal est prêt. Utilisez le paramètre timeout pour plafonner le temps de rendu total. L’API renvoie le HTML dont elle dispose au moment où le minuteur se déclenche, ou un 422 accompagné d’une erreur explicative si rien d’exploitable n’a été collecté.
Endpoint
Section intitulée « Endpoint » GET https://scrape.shifter.io/v1?api_key=YOUR_API_KEY&url=<TARGET_URL>&render_js=1&timeout=<MILLISECONDS>
Parameters
Section intitulée « Parameters »| Parameter | Type | Required | Description |
|---|---|---|---|
api_key | string | yes | Votre clé API Web Scraping API |
url | string | yes | URL cible à récupérer |
timeout | integer | no | Temps maximum que le moteur peut consacrer au rendu, en millisecondes. Max 60000. |
render_js | integer | no | Définissez à 1 pour effectuer le rendu JavaScript. |
Example request
Section intitulée « Example request »curl "https://scrape.shifter.io/v1?api_key=YOUR_API_KEY&url=https%3A%2F%2Fhttpbin.org%2Fget&render_js=1&timeout=200"import requests
r = requests.get("https://scrape.shifter.io/v1", params={ "api_key": "YOUR_API_KEY", "url": "https://httpbin.org/get", "render_js": 1, "timeout": 200,})print(r.json())import fetch from 'node-fetch';
const url = 'https://scrape.shifter.io/v1?' + new URLSearchParams({ api_key: 'YOUR_API_KEY', url: 'https://httpbin.org/get', render_js: '1', timeout: '200',});const res = await fetch(url);console.log(await res.json());Example response
Section intitulée « Example response »{ "status": "Failure", "status_code": 422, "created_at": "2022-04-26T11:57:23.242Z", "processed_at": "2022-04-26T11:57:23.739Z", "time_taken": { "total": 0.701, "scraping": 0.202, "setup_worker": 0.403 }, "error": "The target page took more than 0.2 seconds to load, the website might be down. Retry the request or increase the value of 'timeout' parameter.", "page_content": null}