The present method relates to methods of detecting and manipulating defined regions within web pages, and more particularly, to a method of consolidating web pages by periodically collecting data from a user-selected group of web resources for display to the user.
Webpages are often comprised of multiple defined regions of structured elements, such as a document division elements or “divs” (indicated by the <div>tag in HTML). The defined regions permit organization of the content in blocks, where each block may contain a specific content, links, or a div within a div, etc. News webpages especially utilize defined regions, with each block potentially displaying a headline, an article teaser, one or more hyperlinks, contact information, and the like. Alternatively, a webpage may contain a large defined region with a single, complete article, surrounded by blocks containing internal site links, advertising, and similar information related or unrelated to the main article.
What is needed is a means to detect and define the location of defined regions within a webpage for manipulation and conversion to more readable and understandable forms; and, ultimately, delivery to an end user in a desired format.
A method of mapping of defined regions within a webpage is described herein. The steps of the method of providing content to a user includes communicating a resource address from a user input on a local computing device to a web browser instance on a remote server. Then, building a site page associated with the resource address within the web browser instance and detecting a site page code indicative of a defined region within the site page. Next, storing a boundary and a coordinate of the defined region relative to an origin. At least a portion of the site page that at least includes the defined region is converted into an image file, where the image file is visually representative of the portion of the site page. A position is defined on the image file which substantially corresponds to the coordinate of the defined region. An area on the image file is defined which includes the position and substantially corresponds to the boundary of the defined region. At least part of the image file is stored on the remote server, with the position and the area data, such that a defined region image portion can be located on the part of the image file.
The coordinate of the defined region comprises a horizontal coordinate and a vertical coordinate, the horizontal coordinate defining a horizontal pixel count from the origin and the vertical coordinate defining a vertical pixel count from the origin, the method further comprising the steps of:
The boundary comprises a pixel height count and a pixel width count of the defined region, the boundary including the coordinate of the defined region, the method further comprising the step of:
An image resolution of the image file corresponds to the screen resolution of the virtual screen, and wherein an image coordinate system corresponds to the site page coordinate system, the method further comprising the steps of:
Alternative steps may include defining a crop boundary on the part of the image file, the crop boundary being defined on the part of the image file by the horizontal pixel count, the vertical pixel count, the pixel width count, and the pixel height count; cropping the part of the image file at the crop boundary to create a cropped image file containing at least the defined region image portion; and storing the cropped image file on the remote server.
Alternative steps may include communicating the cropped image file to the local computing device; and displaying the cropped image file on a screen of the local computing device. Alternative steps may include defining a user coordinate system within a graphical user interface on the local computing device; positioning the cropped image file to a desired coordinate on the graphical user interface; storing an association between the desired coordinate and the cropped image file on the server.
Alternative steps may include
Alternative steps may include defining the crop boundary on the updated part of the updated image file, the updated crop boundary being defined on the updated part of the updated image file by the horizontal pixel count, the vertical pixel count, the pixel width count, and the pixel height count; cropping the updated part of the updated image file at the crop boundary to create an updated cropped image file containing the updated defined region image portion; and storing the updated cropped image file on the remote server.
Alternative steps may include converting the cropped image file into a hash value; converting the updated cropped image file into an updated hash value; and comparing the hash value to the updated hash value to determine if the hash value is different than the updated hash value due to a content change within the boundary and the coordinate. Alternatively, the defined region is a document division element.
Alternative steps may include:
Alternatively, the hyperlink coordinate within the defined region comprises a horizontal hyperlink coordinate and a vertical hyperlink coordinate, the horizontal hyperlink coordinate defining a horizontal hyperlink pixel count from the local origin and the vertical hyperlink coordinate defining a vertical hyperlink pixel count from the local origin, and wherein the hyperlink boundary comprises a hyperlink pixel height count and a hyperlink pixel width count of the defined region, where alternative steps may include:
Alternatively, an image resolution of the image file corresponds to the screen resolution of the virtual screen, the method further comprising the steps of:
Optionally, the local origin is the coordinate of the defined region. Optionally, the hyperlink is a hypertext, the hyperlink boundary enclosing at least the section of the hypertext. Optionally, the hyperlink is a hypergraphic, the hyperlink boundary enclosing at least the section of the hypergraphic. Optionally, the resource address link is associated with the hyperlink image portion, such that selecting the hyperlink image portion causes navigation to a site associated with the resource address link.
Additional objects and features if the method will be more readily apparent from the following detailed description and appended claims when taken in conjunction with the drawings, in which:
web browser instance 20
virtual screen 21
site page 22
header 24
navigation bar 26
page background 28
canvas 30
main content 32
first defined region 34
first subregion 36
second subregion 38
second defined region 40
third defined region 42
defined regions 44-56
origin 58
first boundary 60
first coordinate 61
second boundary 62
second coordinate 63
third boundary 64
third coordinate 65
horizontal pixel count 66
vertical pixel count 68
graphic 70
updated graphic 72
image file 74
first defined region image portion 76
second defined region image portion 78
third defined region image portion 80
first subregion image portion 82
second subregion image portion 84
first area 86
second area 88
third area 90
first position 92
second position 94
third position 96
first subregion image position 98
second subregion image position 100
first subregion area 102
second subregion area 104
first boundary width w1
first boundary height h1
second boundary width w2
second boundary height h2
third boundary width w3
third boundary height h3
first cropped image 106
second cropped image 108
third cropped image 110
updated cropped image 112
local computing device screen 114
user system origin 116
first user coordinate 118
second user coordinate 120
third user coordinate 122
user interface background 124
third hypertext link 126
second hypertext link 127
hypergraphic link 128
external link 130
article excerpt 132
article excerpt 134
third hyperlink boundary 136
second hyperlink boundary 138
graphic hyperlink boundary 140
hyperlink coordinate 142, 144, 146
hyperlink image portion 148, 150, 152
updated site page 154
The detailed descriptions set forth below in connection with the appended drawings are intended as a description of embodiments of the invention, and is not intended to represent the only forms in which the present invention may be constructed and/or utilized. The descriptions set forth the structure and the sequence of steps for constructing and operating the invention in connection with the illustrated embodiments. It is to be understood, however, that the same or equivalent structures and steps may be accomplished by different embodiments that are also intended to be encompassed within the spirit and scope of the invention.
Example computer networks are well known in the art, often having one or more client computers and a server, on which any of the methods and systems of various embodiments may be implemented. In particular the computer system, or server in this example, may represent any of the computer systems and physical components necessary to perform the computerized methods discussed in connection with the present figures and, in particular, may represent a server (cloud, array, etc.), client, or other computer system upon which e-commerce servers, websites, web browsers and/or web analytic applications may be instantiated.
The server and client computer are known to a person of ordinary skill in the art, and may include a processor, a bus for communicating information, a main memory coupled to the bus for storing information and instructions to be executed by the processor and for storing temporary variables or other intermediate information during the execution of instructions by processor, a static storage device or other non-transitory computer readable medium for storing static information and instructions for the processor, and a storage device, such as a hard disk, may also be provided and coupled to the bus for storing information and instructions. The server and client computers may optionally be coupled to a display for displaying information. However, in the case of servers, such a display may not be present and all administration of the server may be via remote clients. Further, the server and client computers may optionally include an input device for communicating information and command selections to the processor, such as a keyboard, mouse, touchpad, and the like.
The server and client computers may also include a communication interface coupled to the bus, for providing two-way, wired and/or wireless data communication to and from the server and/or client computers. For example, the communications interface may send and receive signals via a local area network or other network, including the Internet.
The hard drive of the server or the client computer is encoded with executable instructions, that when executed by a processor cause the processor to perform acts as described in the present methods. The server communicates through the Internet with the client computer to cause information and/or graphics to be displayed on the screen, such as HTML code, text, images, and the like. The server may host the URL (uniform resource locator) site with the article or other information, which may be accessed by the client computer. Information transmitted to the client computer may be stored and manipulated according to the methods described below, using the software encoded on the client device.
While the following description may discuss processing, storage, computers, screens, screen interface, user interface, inputs, outputs as well as a multitude of steps, procedures, logic, handling and the like, it is understood that any of these various steps may be accomplished on a single device, multiple devices or with a single executable code base, or many. Further when multiple different devices are used they may be connected in a multitude of ways and in many configurations. They may for example be hard-wired together, communicate by way of the internet, radio signal or any signal on the electromagnetic spectrum suitable for communicating such information. Multiple devices may be in one location or many and the many process steps described in this method may be broken up in a myriad of ways and among many devices. Processing of these steps may happen in series or in parallel and on one or many devices. There may be one or many users and user interfaces and there may be a number of different formats on which users may receive formation.
Accordingly, the present method provides content to a user from a site page (22) built within a web browser instance (20) on a virtual screen (21) or an actual screen. A simplified example site page (22) is illustrated in schematic form in
In particular, and to simplify the example, three defined regions (34, 40, 42) will be explored according to the method. However, the method described in reference to defined regions (34, 40, 42) may be utilized to manipulate, modify, and convert the remaining defined regions (44-56) similarly. Specifically,
Within the HTML code (or other code used in website design) are indicators of defined regions, such as the example div block with an internal hyperlink <div id=“Article1” div style=“height:125px; width:75px”><a href=“http://webaddress.com” target=“_blank”>Article 1 Title</a></div>. This example code would display a defined region with a dimension of 125 pixels high and 75 pixels wide. Alternatively, CSS can be used to set various styles and dimensions. The text within the defined region would be “Article 1 Title”. By clicking on the text, the browser will be directed to the link (webaddress.com) within a new browser instance. Thus, by exploring the known parameters of each defined region and the surrounding defined regions, the width, height, and location of the defined region can be determined and recorded as a pixel dimension on a Cartesian coordinate system.
Looking more closely at
Looking at
This application is a continuation of U.S. nonprovisional application Ser. No. 14/290,839 filed on May 29, 2015, which claims the priority date of U.S. provisional application No. 61/806,805 filed on Mar. 29, 2013, each of which is incorporated by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
61806805 | Mar 2013 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14290839 | May 2014 | US |
Child | 15616891 | US |