1. A computer-implemented method for sharing web pages, comprising: at a client computer system having one or more processors that execute one or more programs stored in a memory of the client computer system: generating a representation of a web page that is displayed in a window of a web browser in a user interface of the client computer system; recording a screencast of the web page over a period of time, the screencast including web page changes resulting from input events; recording each input event along with a corresponding time stamp; and storing the screencast, the input events and the timestamps in a screencast file; at either the client computer system or a server computer system: extracting screencast portions related to selected time stamps based on a buffer time added to the beginning and end of the input event from the screencast file; and assembling the screencast portions to generate an abridged video recording; wherein the buffer time associated with each input event is based on a type of the input event.