Screen scraping is the process of collecting screen display data from one application and translating it so that another application can display it. This is normally done to capture data from a legacy application in order to display it using a more modern user interface.
Screen scraping usually refers to a legitimate technique used to translate screen data from one application to another. It is sometimes confused with content scraping, which is the use of manual or automatic means to harvest content from a website without the approval of the website owner.
Screen scraping is sometimes referred to as terminal emulation.
Under normal circumstances, a legacy application is either replaced by a new program or brought up to date by rewriting the source code. In some cases, it is desirable to continue using a legacy application but the the lack of availability of source code, programmers or documentation makes it impossible to rewrite or update the application. In such a case, the only way to continue using the legacy application may be to write screen scraping software to translate it into a more up-to-date user interface. Screen scraping is usually done only when all other options are impractical.
The screen scraping application must usually do both of the following:
Capture screen input and pass it on to the legacy application for processing
Return data from the application to the user and display it properly on the user's screen
For example, screen scraper software is available to take the output from a legacy application running on an IBM mainframe and use it as input for an application running on a PC.