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é.
Point de terminaison
Section intitulée « Point de terminaison » GET https://scrape.shifter.io/v1?api_key=YOUR_API_KEY&url=<TARGET_URL>&render_js=1&timeout=<MILLISECONDS>
Paramètres
Section intitulée « Paramètres »| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
api_key | string | oui | Votre clé API Web Scraping API |
url | string | oui | URL cible à récupérer |
timeout | integer | non | Temps maximum que le moteur peut consacrer au rendu, en millisecondes. Max 60000. |
render_js | integer | non | Définissez à 1 pour effectuer le rendu JavaScript. |
Exemple de requête
Section intitulée « Exemple de requête »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());Exemple de réponse
Section intitulée « Exemple de réponse »{ "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}