1. Field of the Invention
The present invention generally relates to a method, system and program product for obscuring supplemental web content. Specifically, the present invention allows supplemental web content such as advertisements (e.g., pop-up, banner, etc.) to be reduced in quality so that they are less conspicuous on a web page.
2. Related Art
As use of the World Wide Web becomes more pervasive, Internet-based advertising has become a big business. Many of the advertisements now use attention-getting techniques such as animation, sounds, bright colors, etc. Typically, the advertisements are displayed on web pages requested by end-users. For example, if a user requests a certain web page, the web server will often dynamically generate a markup-language page to serve in response to the request by combining references to one or more advertisements with the content that the user requested. Advertising and other types of inserted supplemental content are generally delivered in the form of Uniform Resource Identifier (URI) references within markup language. As is well known, a Uniform Resource Locator (URL) is a specific type of URI. It should be understood that “supplemental content” as used herein can also refer to downloaded fonts, Javascript, Java bytecodes, ActiveX controls, markup language fragments, streaming media, Flash animations, or generally any other type of content that can be embedded in markup language by reference. Typically, the web server serves the markup language document containing such references to the client, and it is the responsibility of the client to request any referenced supplemental content. This is commonly done during the client browser's rendering operation by making a separate request to each web server hosting the supplemental content. Unfortunately, such content can be extremely distracting and annoying to the end-user. This is especially the case since the supplemental content is usually unsolicited. Moreover, supplemental content with advanced features such as animation and sound can consume resources and slow the loading of the pertinent parts of the web page on the client.
Unsolicited advertisements inserted into desired content may often be found on web portal pages. As known, a portal page is generated at a web “portal” server by portal server software (e.g., WebSphere Portal Server™, which is commercially available from International Business Machines Corp. of Armonk, N.Y.). A portal page typically includes sections or visual portlets that each contain certain content formatted according to a user's preferences. For example, a user could establish his/her own portal page that has sections for news, weather and sports. When the portal page is requested, the portal server would obtain the desired content from the appropriate content providers. Once obtained, the content would be aggregated and URI references to advertisements and other supplemental content inserted into the markup language for display in the appropriate sections as a portal web page. This portal technology has lead to the explosion of personalized “home” pages for individual web users.
Currently, many products exist for blocking unwanted supplemental content. These products, sometimes called “ad blockers,” are usually conditioned upon regular expression matching against a list of Uniform Resource Identifier (URI) patterns representing known sources of content to be blocked. The list may also be referred to as a “block list.” Once such content is detected, the current ad blockers either do not retrieve the content referenced by the URI, or retrieve but do not render the content. In either case, the web page displayed to the user may be distorted from what the web designer intended, since the missing content could leave gaps or affect the layout and spacing of the remaining content. Further, if entries in the block list are incorrect, the ad blocker may incorrectly block valid, desired content. This could prevent pertinent content from reaching the users. Even worse, it could prevent a user from ever realizing that pertinent content has been blocked, making it impossible for the user to know that the block list needs to be corrected, and potentially seriously reducing the quality of the web browsing experience.
In view of the foregoing, there exists a need for a method, system and program product for obscuring supplemental web content such as advertisements. Specifically, a need exists for supplemental content to be detected and reduced in quality so that the web page can still be rendered as intended without distracting the user.
In general, the present invention provides a method, system and program product for obscuring supplemental web content. Specifically, under the present invention, supplemental web content (e.g., an advertisement) associated with a requested web page is detected and reduced in quality (i.e., obscured). In reducing the supplemental web content in quality, the present invention can employ any number of techniques such as removing color, animation or sound, reducing contrast or resolution, blurring the content, etc. In any event, the requested web page is rendered with the reduced quality supplemental web content. The supplemental web content can then be restored to its original quality if the user so desires, based upon a prompt.
A first aspect of the present invention provides a method for obscuring supplemental web content, comprising: detecting a reference to supplemental web content in requested markup language; reducing a quality of the supplemental web content; and rendering the requested markup language with the reduced quality supplemental web content.
A second aspect of the present invention provides a system for obscuring supplemental web content, comprising: a content detection system for detecting a reference to supplemental web content associated with a requested web page; a quality reduction system for reducing a quality of the supplemental web content; and a communication system for serving the requested web page with the reduced quality supplemental web content.
A third aspect of the present invention provides a program product stored on a recordable medium for obscuring supplemental web content, which when executed comprises: program code for detecting a reference to supplemental web content associated with a requested web page; program code for reducing a quality of the supplemental web content; and program code for serving the requested web page with the reduced quality supplemental web content.
A fourth aspect of the present invention provides a computer-implemented business method for obscuring supplemental web content, comprising: collecting a fee from a user; receiving a request for markup language from the user, wherein the markup language includes a reference to supplemental web content; obscuring the supplemental web content; and serving the requested markup language with the obscured supplemental web content to the user.
Therefore, the present invention provides a method, system and program product for obscuring supplemental web content.
These and other features of this invention will be more readily understood from the following detailed description of the various aspects of the invention taken in conjunction with the accompanying drawings in which:
The drawings are merely schematic representations, not intended to portray specific parameters of the invention. The drawings are intended to depict only typical embodiments of the invention, and therefore should not be considered as limiting the scope of the invention. In the drawings, like numbering represents like elements.
As indicated above, the present invention provides a method, system and program product for obscuring supplemental web content. Specifically, under the present invention, supplemental web content (e.g., an advertisement) associated with a requested web page is detected and reduced in quality (i.e., obscured). In reducing the supplemental web content in quality, the present invention can employ any number of techniques such as removing color, animation or sound, reducing contrast or resolution, blurring the content, etc. In any event, the requested web page is rendered with the reduced quality supplemental web content. The supplemental web content can then be restored to its original quality if the user so desires, based upon a prompt. It should be understood in advance that as used herein, the term “supplemental content” is intended to refer to advertisements, images, downloaded fonts, Javascript, Java bytecodes, ActiveX controls, markup language fragments, streaming media, Flash animations, or generally any other type of content that can be embedded in markup language by reference.
Referring now to
In any event, server 14 could be an application server, portal server or the like. Typically, user 16 will operate client 12 to request web content (e.g., web pages). Server 14 will process the requests, obtain the necessary web content from content providers 18, generate markup language including the requested web content as well as possibly references to supplemental content, and serve the markup language to client 12. To this extent, client 12 can be any type of computerized device capable of communicating with server 14. For example, client 12 could be a personal computer, a hand held device, a cellular telephone, etc.
The teachings of the present invention are typically implemented in a network environment such as the Internet, a wide area network (WAN), a local area network (LAN), a virtual private network (VPN), etc. To this extent, communication between client 12 and server 14 could occur via a direct hardwired connection (e.g., serial port), or via an addressable connection that may utilize any combination of wireline and/or wireless transmission methods. Server 14 and client 12 may utilize conventional network connectivity, such as Token Ring, Ethernet, WiFi or other conventional communications standards. Moreover, connectivity could be provided by conventional TCP/IP sockets-based protocol. In this instance, client 12 would utilize an Internet service provider to establish connectivity to server 14.
As depicted, server 14 generally comprises central processing unit (CPU) 20, memory 22, bus 24, input/output (I/O) interfaces 26, external devices/resources 28 and storage unit 30. CPU 20 may comprise a single processing unit, or be distributed across one or more processing units in one or more locations, e.g., on a client and computer system. Memory 22 may comprise any known type of data storage and/or transmission media, including magnetic media, optical media, random access memory (RAM), read-only memory (ROM), a data cache, etc. Moreover, similar to CPU 20, memory 22 may reside at a single physical location, comprising one or more types of data storage, or be distributed across a plurality of physical systems in various forms.
I/O interfaces 26 may comprise any system for exchanging information to/from an external source. External devices/resources 28 may comprise any known type of external device, including speakers, a CRT, LCD screen, hand-held device, keyboard, mouse, voice recognition system, speech output system, printer, monitor/display, facsimile, pager, etc. Bus 24 provides a communication link between each of the components in server 14 and likewise may comprise any known type of transmission link, including electrical, optical, wireless, etc.
Storage unit 30 can be any system (e.g., a file system or database) capable of providing storage for information under the present invention. As such, storage unit 30 could include one or more storage devices, such as a magnetic disk drive or an optical disk drive. In another embodiment, storage unit 30 includes data distributed across, for example, a local area network (LAN), wide area network (WAN) or a storage area network (SAN) (not shown). Although not shown, additional components, such as cache memory, communication systems, system software, etc., may be incorporated into server 14. Further, it is understood that client 12 will typically include the same components (e.g., CPU, memory, etc.) as shown and described with reference to server 14. These components have not been separately shown and discussed for brevity.
Shown in memory 22 of server 14 is web content program 32 (shown in phantom), which can represent any type of program that is capable of obtaining and rendering web content for user 16. For example, web content program 32 can be an application server program such as WebSphere Application Server, or a portal program such as WebSphere Portal Server (both of which are commercially available from International Business Machines Corp. of Armonk, N.Y.). In the case of the latter, web content program 32 would receive requests from client 12 and interface with one or more portlets 44 to obtain the content from content providers 18. For example, if user 16 requested a personalized home page with portlets for Breaking News from AP and Technology News from Reuters, web content program 32 would call the Breaking News from AP and Technology from Reuters portlets 44, which would obtain the corresponding web content from the appropriate content providers 18. In any event, it should be appreciated that web content program 32 would include additional, well-known systems that are not depicted in
Shown within web content program 32 is content obscuring system 34, which will obscure supplemental web content according to the present invention. It should be understood that content obscuring system 34 is shown within web content program 32 for illustrative purposes only. For example, content obscuring system 34 could exist separate from, and work in conjunction with, web content program 32. Furthermore, content obscuring system 34 could alternatively be loaded on client 12. Accordingly, the embodiment depicted in
In general, user 16 will operate web browser 46 on client 12 to request web content. Assume in this example that the requested web content is a web page. The request will be received by web content program 32, which will obtain the necessary web content to build the page. However, as indicated above, the obtained web content might not only include desired web content, but also supplemental web content such as unsolicited advertisements, typically in the form of URI references within markup language. For example, referring to
Referring back to
In one aspect of the invention, the quality reduction system 38 resides on server 14. In this aspect, after obtaining the web content on server 14, quality reduction system 38 will reduce a quality of the detected supplemental web content. That is, the quality of any web content whose URI matched a URI in the list will be reduced. In a typical embodiment, quality reduction system 38 will reduce the quality of an image by substituting a gray-scale palette for a full color pallette. This can be done by changing the URI representing the image; or providing Javascript specifying a base and alternate version of the image, the alternate version displayable when the mouse cursor is positioned within the image's area; or serving a reduced-quality image in response to a request from the browser for the referenced image. However, many other alternatives are possible. For example, quality reduction system 38 could lower the contrast of the supplemental web content, lower the resolution of the supplemental web content, blur the supplemental web content (e.g., via Gaussian blurring), reduce the quantity of colors of the supplemental web content, disengage/remove any animation in the supplemental web content, disengage/remove any sound of the supplemental web content, or any combination thereof, etc. Regardless, one or more algorithms for reducing the quality of the supplemental web content could be maintained in storage unit 30. This would provide uniformity and predictability for quality reduction. For example, an algorithm could state: “disengage animation, disengage sound, replace colors with gray-scale, and lower the contrast by 30%.” The list could associate a specific obscuration algorithm with each URI or URI pattern on the list.
In any event, once the supplemental web content has been reduced in quality, communication system 40 will serve the markup with the reduced quality supplemental content to client 12 where it will be rendered in browser 46 (e.g., by a content rendering system not shown). Specifically, instead of the supplemental web content being in its original quality, it will be shown in the reduced quality. Thus, the layout of the requested web page can be preserved without user 16 being distracted or system resources being consumed.
Referring to
If upon viewing the web page, user 16 wishes to see the reduced quality supplemental web content in its original quality, he or she can do by interacting with browser 46 (
In one preferred embodiment where the content to be obscured is an image and the quality reduction system 38 resides on the server 14, the markup language document can include Javascript specifying a base (reduced-quality) version and an alternate (full-quality) version of an image to be obscured. When the Javascript is interpreted at the client, the Web browser can first render the reduced-quality image, but later substitute the full-quality image in place of the reduced-quality image when the user positions the mouse cursor within the obscured image. With this embodiment the invention can be implemented without any changes to existing Web browser logic. Similarly, if the blocked content is an animated image, the animation can be played when the cursor is positioned within the image's area, and otherwise not played. Likewise, if the blocked content includes audio, the audio can be suppressed for a reduced-quality rendering, and played if the user selects the blocked content. The above are merely examples by way of illustration and not limitations.
In another embodiment, the quality reduction system 38 can reside entirely on the client 12, and the obscuration algorithms can be any that are feasibly implementable on a client device. This embodiment requires a modification to existing Web browser logic.
Regardless of the function placement for the quality reduction system 38, as a result the user retains complete control over whether to view or hear or perceive the obscured content. In case the content is desired content that has been blocked inadvertently due to an error in the block list, the user now has the opportunity to easily obtain a full-quality rendering for the individual item of blocked content and if desired, correct the block-list error.
Referring now to
Alternatively (for a client-based function placement of the content obscuring system 34), in step S1, a request for a web page is received. In step S2, the corresponding web content is obtained and served to the client. In step S3 supplemental web content is detected by comparing, at the client, URI references in the received markup language request against a predetermined list. In step S4, any detected supplemental web content is reduced in quality by performing specified algorithms at the client. In step S5, the markup language for the web page is rendered at the client with the reduced quality supplemental web content.
The present invention, particularly in its server-based embodiments, can advantageously be used in methods of doing business by providing varying levels of obscuration for a fee. For example, a web portal site may choose to offer three levels of service to customers/users. Customers wishing free service could receive the lowest level of service, with no supplemental content obscured; thus they are fully exposed to all the advertising, sounds, animation, etc. that is served along with the desired content. Customers who pay a small fee could receive a middle level of service where some of the supplemental content is obscured, or obscured to a limited degree. Premium customers who choose to the highest level of service could pay the highest fees, and in return receive the web content with all supplemental content fully obscured. The fee might be charged based on the number of web page visits, the customer's patronage of specified advertisers, the total value of transactions performed at the web site, the number of advertisements viewed unobscured, etc. Or, the fee might be assessed using a subscription model whereby customers pay a fixed fee periodically. In any event, a “fee” is intended to mean any type of legal detriment such as monetary exchange, goods/services exchange, etc. Further, a “fee” could be in the form of a user's willingness to allow his/her personal information to be given/sold to third parties.
It should be understood that the present invention can be realized in hardware, software, or a combination of hardware and software. Any kind of computer system(s)- or other apparatus adapted for carrying out the methods described herein—is suited. A typical combination of hardware and software could be a general purpose computer system with a computer program that, when loaded and executed, carries out the respective methods described herein. Alternatively, a specific use computer, containing specialized hardware for carrying out one or more of the functional tasks of the invention, could be utilized. The present invention can also be embedded in a computer program product, which comprises all the respective features enabling the implementation of the methods described herein, and which—when loaded in a computer system—is able to carry out these methods. Computer program, software program, program, or software, in the present context mean any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form.
The foregoing description of the preferred embodiments of this invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and obviously, many modifications and variations are possible. Such modifications and variations that may be apparent to a person skilled in the art are intended to be included within the scope of this invention as defined by the accompanying claims. For example, as briefly outlined above in reference to
Number | Name | Date | Kind |
---|---|---|---|
5682326 | Klingler et al. | Oct 1997 | A |
5764866 | Maniwa | Jun 1998 | A |
6185625 | Tso et al. | Feb 2001 | B1 |
6509974 | Hansen | Jan 2003 | B1 |
6583800 | Ridgley et al. | Jun 2003 | B1 |
6593944 | Nicolas et al. | Jul 2003 | B1 |
6654814 | Britton et al. | Nov 2003 | B1 |
6822663 | Wang et al. | Nov 2004 | B2 |
7012706 | Hansen | Mar 2006 | B1 |
7047241 | Erickson | May 2006 | B1 |
7065712 | Muto et al. | Jun 2006 | B2 |
7069592 | Porcari | Jun 2006 | B2 |
7143091 | Charnock et al. | Nov 2006 | B2 |
7177488 | Berkner et al. | Feb 2007 | B2 |
7412646 | Parikh et al. | Aug 2008 | B2 |
20020033844 | Levy et al. | Mar 2002 | A1 |
20020191031 | Ricard | Dec 2002 | A1 |
20040003117 | McCoy et al. | Jan 2004 | A1 |
20050022114 | Shanahan et al. | Jan 2005 | A1 |
20050071758 | Ehrich et al. | Mar 2005 | A1 |
20060277474 | Robarts et al. | Dec 2006 | A1 |
20070112627 | Jacobs et al. | May 2007 | A1 |
Number | Date | Country | |
---|---|---|---|
20050055644 A1 | Mar 2005 | US |