1. A method for crawling a browser-accessible application, the method comprising: causing a target application and a bridge application to run concurrently in a browser-controllable player; and iteratively receiving from said bridge application current state information of said target application, storing said state information on a data storage device if said state information is not found on said data storage device, wherein said state information is stored as a descendant state of an initial state of said target application, and interacting with said target application in accordance with a predefined simulation algorithm, thereby effecting a new state of said target application, until a predefined termination condition is reached, wherein said causing, receiving, storing, and interacting steps are implemented in either of a) computer hardware configured to perform said steps, and b) computer software embodied in a non-transitory, tangible, computer-readable storage medium.