Screen scraping is data rechtstreeks van het scherm van een applicatie aflezen, dus de tekst en velden vangen die een mens zou zien, omdat er geen nette API is om die data op te vragen. De software kijkt in feite naar het scherm zoals een mens dat doet en kopieert wat het vindt.
Stel je een assistent voor die niet in de archiefkast kan, dus leest hij elk getal af van de geprinte rapporten die aan de muur hangen en typt ze over in een spreadsheet. Het werkt, maar zodra iemand de muur anders indeelt, raakt de assistent in de war. Dat is screen scraping: het hangt af van een vaste indeling. Daarmee is het de ruwe broer van webscraping, dat de code van een site leest in plaats van het weergegeven scherm.
Het verdient zijn plek bij oude systemen, het bejaarde green-screen-terminal of de desktopapp uit 2003 die geen enkele koppeloptie heeft. Oude tools mikken vaak op vaste schermcoördinaten; nieuwere lezen de labels op het scherm, soms met OCR als de waarden pixels zijn in plaats van tekst. In die gevallen is screen scraping een praktische vorm van data-extractie, en het is een veelgebruikte techniek binnen robotische procesautomatisering, waarbij een bot dezelfde schermen bedient die een medewerker vroeger doorklikte.
De grote kanttekening is breekbaarheid. Een update die een veld hernoemt of een kolom verschuift, kan de scrape stilletjes breken. Een goede opzet logt daarom elke afwijking en waarschuwt een mens, in plaats van stilzwijgend verkeerde data door te geven. Bouw een controle op de uitvoer in en bewaar een screenshot van de fout.
Bij TopDevs zien we screen scraping als een brug, geen eindstation: we gebruiken het om een koppige legacy-app open te breken terwijl we toewerken naar een echte API eronder.