JavaScript-Anweisungen
Übergeben Sie ein URL-codiertes JSON-Array von Browser-Aktionen an js_instructions. Die API führt diese der Reihe nach aus, bevor das endgültige HTML zurückgegeben wird. Nützlich für paginierte Listen, Infinite Scroll und formularbasierte Abläufe.
Endpoint
Abschnitt betitelt „Endpoint“ GET https://scrape.shifter.io/v1?api_key=YOUR_API_KEY&url=<TARGET_URL>&render_js=1&js_instructions=<URL_ENCODED_JSON>
Parameter
Abschnitt betitelt „Parameter“| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
api_key | string | ja | Ihr Web Scraping API-Schlüssel |
url | string | ja | Ziel-URL, die abgerufen werden soll |
js_instructions | string | ja | URL-codiertes JSON-Array von Aktionsobjekten. |
render_js | integer | ja | Muss 1 sein. |
Aktionsobjekt
Abschnitt betitelt „Aktionsobjekt“| Feld | Typ | Beschreibung |
|---|---|---|
action | string | Eines von click, scrollTo, focus, value oder submit (nur Formulare). |
selector | string | CSS-Selektor für das Zielelement. |
timeout | integer | Millisekunden, die nach Abschluss dieser Aktion gewartet werden. |
Beispielanfrage
Abschnitt betitelt „Beispielanfrage“[{"action":"scrollTo","selector":"div.navFooterBackToTop","timeout":5000,"block":"start"}]curl "https://scrape.shifter.io/v1?api_key=YOUR_API_KEY&url=https://example.com&render_js=1&js_instructions=%5B%7B%22action%22%3A%22scrollTo%22%2C%22selector%22%3A%22div.navFooterBackToTop%22%2C%22timeout%22%3A%205000%2C%20%22block%22%3A%20%22start%22%7D%5D"import jsonimport requests
instructions = [{ "action": "scrollTo", "selector": "div.navFooterBackToTop", "timeout": 5000, "block": "start",}]r = requests.get("https://scrape.shifter.io/v1", params={ "api_key": "YOUR_API_KEY", "url": "https://example.com", "render_js": 1, "js_instructions": json.dumps(instructions),})print(r.text)import fetch from 'node-fetch';
const instructions = [{ action: 'scrollTo', selector: 'div.navFooterBackToTop', timeout: 5000, block: 'start',}];const url = 'https://scrape.shifter.io/v1?' + new URLSearchParams({ api_key: 'YOUR_API_KEY', url: 'https://example.com', render_js: '1', js_instructions: JSON.stringify(instructions),});const res = await fetch(url);console.log(await res.text());Beispielantwort
Abschnitt betitelt „Beispielantwort“<!doctype html><html><head> <title>Example Domain</title></head><body><div> <h1>Example Domain</h1> <p>This domain is for use in illustrative examples in documents.</p></div></body></html>