System, method and computer readable medium for placing advertisements into web pages
First Claim
Patent Images
1. A computer-implemented method for dynamically placing content into web pages, the method comprising:
- accessing web page data corresponding to a web page, the web page corresponding to a plurality of versions including at least a first version and a second version, the first version including a first set of document object model (DOM) elements and the second version including a second set of DOM elements, the first set of DOM elements being at least partially different from the second set of DOM elements, each DOM element of the first and second set of DOM elements being associated with a screen area on the web page and an event handler that detects cursor movements within the screen area of the DOM element;
continuously receiving, at an event server, an event data stream representing a plurality of cursor movements occurring along a path of a cursor over the web page;
detecting a plurality of events within the event data stream, each event of the plurality of events being detected using the event handler corresponding to a DOM element of the screen area in which the event occurred, and the event handler detecting an event of the plurality of events in response to at least one cursor movement occurring along the path of the cursor within the corresponding DOM element;
grouping one or more events of the plurality of detected events to form a sequence of detected events within the group, the grouping of the one or more events being based on at least one cursor movement pattern that indicates a probabilistic locus of a user'"'"'s attention;
determining at least one attention event as a result of forming the sequence of detected events, the detection of the at least one attention event indicating a probability that a DOM element is associated with a user'"'"'s attention, the probability being based at least in part on a movement characteristic of the at least one attention event, and the DOM element associated with the user'"'"'s attention being the DOM element within which the event occurred or another DOM element adjacent to the DOM element in which the event occurred;
determining a ranking for each DOM element included in each of the first set and second set of DOM elements associated with the plurality of versions of the web page, the ranking representing a popularity of the DOM element within the version of the web page, and the ranking being based on a ratio between a number of attention events associated with the DOM element and a total number of attention events associated with the DOM elements included in the first set and second set of DOM elements;
selecting a DOM element from amongst the DOM elements included in the first set and second set of DOM elements, the selection being based on the ranking associated with the DOM element;
identifying a plurality of candidate content elements for placing into the web page;
comparing content data of each candidate content element of the plurality of candidate content elements to content data of the selected DOM element;
based at least in part on the comparison, determining a relevance score for each of the plurality of candidate content elements selecting, based at least in part on the relevance score, a candidate content element from the plurality of candidate content elements; and
placing the selected candidate content element into the web page.
5 Assignments
0 Petitions
Accused Products
Abstract
Selection of web page advertisements for placement into a web page may use attention data that ranks the elements of the web page according to the attention the elements receive from users during interactions with the web page. The content of ads can be matched to the content of the most highly ranked elements of the web page rather than the web page as a whole. Alternatively, ads can be selected that historically produce a preferred pattern of behavior such as an attention shift from a highly ranked element of the web page to the ad.
-
Citations
16 Claims
-
1. A computer-implemented method for dynamically placing content into web pages, the method comprising:
-
accessing web page data corresponding to a web page, the web page corresponding to a plurality of versions including at least a first version and a second version, the first version including a first set of document object model (DOM) elements and the second version including a second set of DOM elements, the first set of DOM elements being at least partially different from the second set of DOM elements, each DOM element of the first and second set of DOM elements being associated with a screen area on the web page and an event handler that detects cursor movements within the screen area of the DOM element; continuously receiving, at an event server, an event data stream representing a plurality of cursor movements occurring along a path of a cursor over the web page; detecting a plurality of events within the event data stream, each event of the plurality of events being detected using the event handler corresponding to a DOM element of the screen area in which the event occurred, and the event handler detecting an event of the plurality of events in response to at least one cursor movement occurring along the path of the cursor within the corresponding DOM element; grouping one or more events of the plurality of detected events to form a sequence of detected events within the group, the grouping of the one or more events being based on at least one cursor movement pattern that indicates a probabilistic locus of a user'"'"'s attention; determining at least one attention event as a result of forming the sequence of detected events, the detection of the at least one attention event indicating a probability that a DOM element is associated with a user'"'"'s attention, the probability being based at least in part on a movement characteristic of the at least one attention event, and the DOM element associated with the user'"'"'s attention being the DOM element within which the event occurred or another DOM element adjacent to the DOM element in which the event occurred; determining a ranking for each DOM element included in each of the first set and second set of DOM elements associated with the plurality of versions of the web page, the ranking representing a popularity of the DOM element within the version of the web page, and the ranking being based on a ratio between a number of attention events associated with the DOM element and a total number of attention events associated with the DOM elements included in the first set and second set of DOM elements; selecting a DOM element from amongst the DOM elements included in the first set and second set of DOM elements, the selection being based on the ranking associated with the DOM element; identifying a plurality of candidate content elements for placing into the web page; comparing content data of each candidate content element of the plurality of candidate content elements to content data of the selected DOM element; based at least in part on the comparison, determining a relevance score for each of the plurality of candidate content elements selecting, based at least in part on the relevance score, a candidate content element from the plurality of candidate content elements; and placing the selected candidate content element into the web page. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A server for placing content elements into a web page, the server comprising:
-
a data store that stores a plurality of content elements; a content interest data store that stores a list of document object (DOM) elements of the web page, the web page corresponding to a plurality of versions including a first version and a second version, the first version including a first set of DOM elements and the second version including a second set of DOM elements, the first set of DOM elements being at least partially different from the second set of DOM elements, each DOM element of the first and second set of DOM elements being associated with a screen area on the web page and an event handler that detects cursor movements and interactions within the screen area of the DOM element; and a processing module configured to; receive a request corresponding to a Uniform Resource Locator (URL); continuously receive an event data stream representing a plurality of cursor movements occurring along a path of a cursor over the web page; detect a plurality of events within the event data stream, each event of the plurality of events being detected using the event handler corresponding to a DOM element of the screen area in which the event occurred, and the event handler detecting an event of the plurality of events in response to at least one cursor movement occurring along the path of the cursor within the corresponding DOM element; group one or more events of the plurality of detected events to form a sequence of detected events within the group, the grouping of the one or more events being based on at least one cursor movement pattern that indicates a probabilistic locus of a user'"'"'s attention; determining at least one attention event as a result of forming the sequence of detected events, the detection of the at least one attention event indicating a probability that a DOM element is associated with a user'"'"'s attention, the probability being based at least in part on a movement characteristic of the at least one attention event, and the DOM element associated with the user'"'"'s attention being the DOM element within which the event occurred or another DOM element adjacent to the DOM element in which the event occurred; determine a ranking for each DOM element included in each of the first set and second set of DOM elements associated with the plurality of versions of the web page, the ranking representing a popularity of the DOM element within the version of the web page, and the ranking being based on a ratio between a number of attention events associated with the DOM element and a total number of attention events associated with the DOM elements included in the first set and second set of DOM elements select a DOM element from amongst the DOM elements included in the first set and second set of DOM elements, the selection being based on the ranking associated with the DOM element; identify a plurality of candidate content elements for placing into the web page; compare content data of each candidate content element of the plurality of candidate content elements to content data of the selected DOM element; based at least in part on the comparison, determine a relevance score for each of the plurality of candidate content elements select, based at least in part on the relevance score, a candidate content element place the selected candidate content element into the web page; and placing the selected candidate content element into the web page. - View Dependent Claims (14)
-
-
15. A non-transitory computer-readable medium comprising computer executable instructions for execution by a processor, that, when executed, cause the processor to:
-
access web page data corresponding to a web page, the web page corresponding to a plurality of versions including a first version and a second version, the first version including a first set of document object model (DOM) elements and the second version including a second set of DOM elements, the first set of Dom elements being at least partially different from the second set of DOM elements, each DOM element of the first set and second set of DOM elements being associated with a screen area on the web page and an event handler that detects cursor movements or interactions within the screen area of the DOM element; continuously receive, at an event server, an event data stream representing a plurality of cursor movements occurring along a path of a cursor over the web page; detect a plurality of events within the event data stream, each event of the plurality of events being detected using the event handler corresponding to a DOM element of the screen area in which the event occurred, and the event handler detecting an event of the plurality of events in response to at least one cursor movement occurring along the path of the cursor within the corresponding DOM element; group one or more events of the plurality of detected events to form a sequence of detected events within the group, the grouping of the one or more events being based on at least one cursor movement pattern that indicates a probabilistic locus of a user'"'"'s attention; determine at least one attention event as a result of forming the sequence of detected events, the detection of the at least one attention event indicating a probability that a DOM element is associated with a user'"'"'s attention, the probability being based at least in part on a movement characteristic of the at least one attention event, and the DOM element associated with the user'"'"'s attention being the DOM element within which the event occurred or another DOM element adjacent to the DOM element in which the event occurred; determine a ranking for each DOM element included in each of the first set and second set of DOM elements associated with the plurality of versions of the web page, the ranking representing a popularity of the DOM element within the version of the web page, and the ranking being based on a ratio between a number of attention events associated with the DOM element and a total number of attention events associated with the DOM elements included in the first set and second set of DOM elements; select a DOM element from amongst the DOM elements included in the first set and second set of DOM elements, the selection being based on the ranking associated with the DOM element; identify a plurality of candidate content elements for placing into the web page; compare content data of each candidate content element of the plurality of candidate content elements to content data of the selected DOM element; based at least in part on the comparison, determine a relevance score for each of the plurality of candidate content elements select, based at least in part on the relevance score, a candidate content element from the plurality of candidate content elements; and place the selected candidate content element into the web page. - View Dependent Claims (16)
-
Specification