The disclosure relates the field of information loading technologies, and in particular to a method for loading recommendation information, a method for detecting web address, a method for loading recommendation information of search result, a device for loading recommendation information, a device for detecting web address, a device for loading recommendation information of search result and a system for loading recommendation information.
With the rapid development of Internet technologies, people are brought into an information society of network economy era to generate a profound impact on enterprise development and personal lives.
Browser is one of the most commonly used client programs. People are accustomed to obtaining webpage information on Internet via the browser. The browser is a program to display files in a web server or file system and allow a user to interact with the files. It is used to display texts, images and other information on the Internet or LAN. The texts or images could be hyperlink to link other web address, such that the user could rapidly and conveniently view a variety of information. Most of webpage are an HTML format, while some of them may be normally displayed only by a special browser.
In the meanwhile, the excess of information on the Internet makes it impossible to efficiently derive their desirable information therefrom such that the efficiency of use is degraded instead.
The user continuously searches for his or her interesting webpage information in a search engine via the browser. The search engine may necessarily search, compare and filter massive information to obtain relevant webpage information. Not only user operations may be more cumbersome and time-consuming, but also resources of the browser, the client and the search engine and network bandwidth may be heavily occupied. Thus, the efficiency of search may be very low, and the resources may be unnecessarily occupied and wasted.
In the view of above problems, the disclosure is proposed to provide a method for loading recommendation information, a method for detecting web address, a method for loading recommendation information of search result, a device for loading recommendation information, a device for detecting web address, a device for loading recommendation information of search result and a system for loading recommendation information.
According to one aspect of the disclosure, there is provided a method for loading recommendation information, comprising steps of:
initiating a loading request of a current webpage at a browser side;
receiving a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located, wherein the recommendation information loading identifier is a recommendation information loading identifier generated when the web address security assembly determines that the loading request conforms to a preset condition;
in accordance with webpage state information about the current webpage, requesting recommendation information from a recommendation server corresponding to the browser; and
loading the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
According to another aspect of the disclosure, there is provided a method for detecting web address, comprising:
at a web address security assembly side, monitoring that a browser in a computer system where a web address security assembly is located initiates a loading request of current webpage;
determining whether the loading request conforms to a preset condition, and if yes, generating a recommendation information loading identifier;
sending the recommendation information loading identifier to the browser, wherein the browser is used to request for the recommendation information from its corresponding recommendation server in accordance with webpage state information about the current webpage and load the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
According to still another aspect of the disclosure, there is provided a method for loading recommendation information of search result, comprising:
initiating a loading request of a current webpage at a browser side;
determining the receipt of a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located, wherein the recommendation information loading identifier is a recommendation information loading identifier sent to the browser when the web address security assembly determines the current webpage corresponding to the loading request to be a webpage corresponding to a search result item in a search result webpage of a previous search engine;
in accordance with the search keyword information in Refer information of current webpage and/or web address information of current webpage, requesting recommendation information from a recommendation server corresponding to the browser; and
loading the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
According to still yet another aspect of the disclosure, there is provided a method for detecting web address, comprising:
at a web address security assembly, monitoring that a browser in a computer system of a query assembly initiates a loading request of current webpage;
determining whether the current webpage corresponding to the loading request is a webpage corresponding to the search result item in the search result webpage of pervious search engine, and if yes, generating a recommendation information loading identifier;
sending the recommendation information loading identifier to the browser, wherein the browser is used to request recommendation information from a recommendation server corresponding to the browser in accordance with the search keyword information in the Refer information of current webpage and/or the web address information of current webpage and to load the recommendation information requested from the recommendation server in the browser window of the current webpage at the browser side.
According to still yet another aspect of the disclosure, there is provided a device for loading recommendation information, comprising:
a processor, configured to
initiate a loading request of a current webpage at a browser side;
receive a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located, wherein the recommendation information loading identifier is a recommendation information loading identifier generated when the web address security assembly determines that the loading request conforms to the preset condition;
in accordance with webpage state information about the current webpage, request recommendation information from a recommendation server corresponding to the browser; and
load the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
According to still yet another aspect of the disclosure, there is provided a device for detecting web address, comprising:
a processor, configured to
monitor that a browser in a computer system where a web address security assembly is located initiates a loading request of current webpage at a web address security assembly side;
determine whether the loading request conforms to a preset condition, and if yes, invoke a recommendation information loading identifier generating module;
generate a recommendation information loading identifier; and
send the recommendation information loading identifier to the browser, wherein the browser is used to request for the recommendation information from its corresponding recommendation server in accordance with webpage state information about the current webpage and load the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
According to still yet another aspect of the disclosure, there is provided a device for loading recommendation information of search result, comprising:
a processor, configured to
initiate a loading request of a current webpage at a browser side;
determine the receipt of a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located, wherein the recommendation information loading identifier is a recommendation information loading identifier sent to the browser when the web address security assembly determines the current webpage corresponding to the loading request to be a webpage corresponding to a search result item in a search result webpage of a previous search engine;
in accordance with the search keyword information in Refer information of current webpage and/or web address information of current webpage, request recommendation information from a recommendation server corresponding to the browser; and
load the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
According to still yet another aspect of the disclosure, there is provided a device for loading recommendation information of search result, comprising:
a processor, configured to
initiate a loading request of a current webpage at a browser side;
determine the receipt of a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located, wherein the recommendation information loading identifier is a recommendation information loading identifier sent to the browser when the web address security assembly determines the current webpage corresponding to the loading request to be a webpage corresponding to a search result item in a search result webpage of a previous search engine;
in accordance with the search keyword information in Refer information of current webpage and/or web address information of current webpage, request recommendation information from a recommendation server corresponding to the browser; and
load the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
According to still yet another aspect of the disclosure, there is provided a system for loading recommendation information, comprising a browser, a web address security apparatus and a recommendation server, wherein
the browser comprises a device for loading recommendation information which comprises:
a loading request initiating module, configured to initiate a loading request of a current webpage at a browser side;
a recommendation information loading identifier receiving module, configured to receive a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located;
a recommendation information requesting module, configured to, in accordance with webpage state information about the current webpage, request recommendation information from a recommendation server corresponding to the browser; and
a recommendation information loading module, configured to load the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side,
the web address security apparatus comprises a device for detecting web address which comprises:
a monitoring module, configured to monitor that a browser in a computer system where a web address security assembly is located initiates a loading request of current webpage at a web address security assembly side;
a determining module, configured to determine whether the loading request conforms to a preset condition, and if yes, invoke a recommendation information loading identifier generating module;
a recommendation information loading identifier generating module, configured to generate a recommendation information loading identifier; and
a recommendation information loading identifier sending module, configured to send the recommendation information loading identifier to the browser,
the recommendation server stores one or more pieces of recommendation information, and the recommendation server comprises:
a recommendation module, configured to, when receiving a request for recommendation information sent from the browser side, search for the recommendation information corresponding to the webpage state information about the current webpage.
According to still yet another aspect of the disclosure, there is provided a system for loading recommendation information, comprising a browser, a web address security apparatus and a recommendation server, wherein
the browser comprises a device for loading recommendation information of search result which comprises:
a loading request initiating module, configured to initiate a loading request of a current webpage at a browser side;
a recommendation information loading identifier receiving module, configured to determine the receipt of a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located;
a recommendation information requesting module, configured to, in accordance with the search keyword information in Refer information of current webpage and/or web address information of current webpage, request recommendation information from a recommendation server corresponding to the browser; and
a recommendation information loading module, configured to load the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side,
the web address security apparatus comprises a device for detecting web address which comprises:
a monitoring module, configured to, at a web address security assembly, monitor that a browser in a computer system of a query assembly initiates a loading request of current webpage;
a determining module, configured to determine whether the current webpage corresponding to the loading request is a webpage corresponding to the search result item in the search result webpage of pervious search engine, if yes, invoke a recommendation information loading identifier generating module;
a recommendation information loading identifier generating module, configured to generate a loading identifier; and
a recommendation information loading identifier sending module, configured to send the recommendation information loading identifier to the browser,
the recommendation server stores one or more pieces of recommendation information, and the recommendation server comprises:
a recommendation module, configured to, when receiving a request for recommendation information sent from the browser side, search for the recommendation information corresponding to the webpage state information about the current webpage.
According to still another aspect of the disclosure, there is provided a computer program, including computer readable codes, wherein a computing device executes any one of the method for loading recommendation information, the method for detecting web address and the method for loading recommendation information of search result when the computer readable codes are operated on the computing device.
According to still yet another aspect of the disclosure, there is a computer readable medium, in which the computer program as stated above is stored.
The disclosure may have following beneficial effects:
According to the disclosure, in response to the request of loading the current webpage, it is possible to receive the recommendation information loading identifier, request for the recommendation information from the recommendation server and load it in the browser window, and load webpage behavior to obtain the recommendation information according to user's request, thereby increasing coverage of the recommendation information and satisfying with user's demand with an improved practicability. Therefore the recommendation information can more exactly reflect the user's personalized interests and hobbies, whereby pushing information to improve the matching ratio of the user's interests and hobbies with the recommendation information. The user may obtain his or her interested recommendation information without manually searching for and filtering information, thereby reducing operation steps of search, comparison and filtration for obtaining interested information and improving efficiency of obtaining user's interested information. In the meanwhile, since user's operation steps are reduced, the resource consumption of the browser and server can be reduced and accordingly the occupation of network resource can be lowered.
Upon the determination on the loading request by the preset conditions, the disclosure may not allow the loading request inconsistent with the preset conditions to request the recommendation information, while allowing the loading request consistent with the preset conditions to request the recommendation information, thereby greatly reducing the requests for the recommendation information from the recommendation server and significantly lowering the resource occupation of the recommendation server.
According to the disclosure, in response to the request of loading the current webpage, it is possible to receive the recommendation information loading identifier, request for the recommendation information on the recommendation server and load it in the browser window, and load webpage behavior to obtain the recommendation information according to user's request, thereby increasing coverage of the recommendation information and satisfying with user's demand with an improved practicability. Therefore the recommendation information can more exactly reflect the user's personalized interests and hobbies, whereby pushing news information to improve the matching ratio of the user's interests and hobbies with the recommendation information. The user may obtain his or her interested recommendation information without manually searching for and filtering information, thereby reducing operation steps of search, comparison and filtration for obtaining interested information and improving efficiency of obtaining user's interested information. In the meanwhile, since user's operation steps are reduced, the resource consumption of the browser and server can be reduced and accordingly the occupation of network resource can be lowered.
Described above is merely an overview of the inventive scheme. In order to more apparently understand the technical means of the disclosure to implement in accordance with the contents of specification, and to more readily understand above and other objectives, features and advantages of the disclosure, specific embodiments of the disclosure are provided hereinafter.
Through reading the detailed description of the following preferred embodiments, various other advantages and benefits will become apparent to a person having ordinary skill in the art. Accompanying drawings are included merely for the purpose of illustrating the preferred embodiments and should not be considered as limiting of the invention. Further, throughout the drawings, same elements are indicated by same reference numerals. In the drawings:
Exemplary embodiments of the disclosure will be described in detail with reference to the accompanying figures hereinafter. Although the exemplary embodiments of the disclosure are illustrated in the accompanying figures, it should be understood that the disclosure may be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be understood thoroughly and completely and will fully convey the scope of the disclosure to those skilled in the art.
With reference to
Step 101, initiating a loading request of a current webpage at a browser side.
The loading request of the current webpage could refer to an instruction to load a webpage sent by a user. For example, the user may open a webpage by clicking a link or by inputting web address at an address bar. When the user instructs to click a link, it is equivalent to a receipt of an instruction to load a webpage from the user; similarly, when the user inputs web address at the address bar and clicks OK button or presses the Enter key, it is also equivalent to a receipt of an instruction to load a webpage from the user.
Step 102, receiving a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located, wherein the recommendation information loading identifier is a recommendation information loading identifier generated when the web address security assembly determines that the loading request conforms to a preset condition.
With the application of this embodiment of the disclosure, when it is monitored that the browser requests to load the webpage, the web address security assembly may determine the preset condition of the webpage which is requested to load. When determining that the loading request conforms to the preset condition, the web address security assembly generates the recommendation information loading identifier and returns it to the browser. When determining that the loading request does not conform to the preset condition, the web address security assembly may not generate the recommendation information loading identifier and the browser loads the webpage normally.
Herein, the recommendation information loading identifier could be a ground on which the browser requests for the recommendation information on a recommendation server corresponding thereto. In the presence of the recommendation information loading identifier, the browser may request for the recommendation information from the recommendation server, and accordingly the recommendation server may return corresponding recommendation information.
In practice, the preset condition may include:
When the browser receives the recommendation information loading identifier, it means the recommendation server can be requested to load the recommendation information.
Step 103, in accordance with webpage state information about the current webpage, requesting recommendation information from a recommendation server corresponding to the browser.
In a specific implementation, the webpage state information may include one or more types as follows:
Refer information corresponding to URL (Universal Resource Locator) of current webpage, web address information of current webpage, title information, identification information of computer hardware and extended information, wherein
For example, when the user inputs search keywords “mobile phone” on the search engine and opens “XX Encyclopedia” webpage in a search result webpage item, the browser may send following webpage state information to the server:
In an optional example according to this embodiment of the disclosure, the extended information may include one or more types as follows:
For example, the extended information (which could be represented by “KV”, i.e., Key-Value pair) may include:
In practice, by the extended information, the browser may send the information which records setting parameters when previously loading other recommendation information to the recommendation server; the recommendation server may be used to make statistics on user behavior information by the extended information, and in accordance with the user behavior information, return corresponding recommendation information to the browser side requesting for the recommendation information. For example, in the case that a certain kind of recommendation information is frequently manually closed by the user, the recommendation server may exclude this kind of recommendation information from the preset condition and no longer recommend it.
In this embodiment of the disclosure, by the user behavior information, the information which is suitable to be recommended and which is not suitable to be recommended can be determined, thus following user's behavior habits, satisfying user's demands and increasing the use efficiency of the recommendation server, the browser and the bandwidth. In a preferred embodiment of the disclosure, Step 103 may comprise sub-steps of:
Sub-Step S11, when the current webpage is a specified webpage, using the webpage state information at least including the web address information of the current webpage to request the recommendation information from the recommendation server corresponding to the browser, wherein the server is used to search for the recommendation information corresponding to the web address information of the current webpage in accordance with the request.
At Sub-Step S11, the recommendation server may obtain a parent webpage layer by layer in accordance with the current webpage URL, then extract a tag of each layer of webpage, extract keywords, and in the end search for the corresponding recommendation information in accordance with the keywords.
For example, the current webpage URL is http://www.***.com/flash/72550.htm, with a webpage tag of the Three Kingdoms Town, which is a kind of flash game; its parent webpage is http://www.***.com/special/1.htm, with a webpage tag of two-player mini-game of the all; its parent webpage of the parent webpage is http://www.***.com/, which is the homepage of website, with a tag of web game platform. The keywords for extraction would be Flash mini-game, and the recommendation information corresponding to the flash mini-game is searched for. For example, top N of the most popular flash mini-games in current network are searched for, wherein N is a positive integer.
and/or,
Sub-Step S12, when the current webpage is loaded, using the webpage state information at least including the title information to request the recommendation information from the recommendation server corresponding to the browser, wherein the server is used to search for the recommendation information corresponding to the title information in accordance with the request.
At Sub-Step S12, the browser may search HTML (Hyper Text Markup Language) documents for a title tag <title>. The <title> may advise the user of a subject matter of an article. The browser may extract a title of a webpage article for the <title> and send it to the recommendation server. The recommendation server may search for the recommendation information corresponding thereto.
and/or,
Sub-Step S13, when the current webpage is the search result webpage of the search engine, using the webpage state information at least including the Refer information of the current webpage to request the recommendation information from the recommendation server corresponding to the browser, wherein the server is used to perform a URL structure analysis by the Refer information of the current webpage in accordance with the request, to extract search keyword information from the URL of the current webpage, to decode the search keyword information in accordance with a predefined webpage encoding rule to obtain the search keywords, and to search for the recommendation information corresponding to the search keywords.
In a specific implementation, a plenty of search engines are based upon a GET request mode. In other words, the URL is followed by a string of different parameters, and depending on the search engines, identifications of their search keyword information may be different. For example, the identifications of search keyword information could be “wd=”, “q=”, “hl=” and etc.
For example, in a URL of a search result webpage obtained by searching for a search keyword:
“q=%e7%a7%8b %e5%af%92%e5%8d %9a %e5%ae%a2” in the search result webpage URL of search engine A, “wd=%C7%EF%BA%AE%B2%A9%BF%CD” in the search result webpage URL of search engine B and “q=%E7%A7%8B%E5%AF%92%E5%8D%9A%E5%AE%A2” in the search result webpage URL of search engine C are search keywords. Other search engines are substantially the same. Fields of keywords could be known from the URL, and then search keywords could be extracted by regular expressions.
In other words, the recommendation server may abstract the regular expressions of the search keywords in advance, by which the search keyword information in the current webpage URL can be extracted.
Examples of the regular expressions of the search keywords are as follows:
In practice, after different webpage encoding rules (charset) are used to encode the same character, codes are differently generated. That is, the search keyword information in the aforesaid search result webpage URL of search engines A, B and C is different.
For example, the webpage encoding rule could be include UTF-8, GB2312 and etc.
UTF-8 normally generates default UTF-8 encoding, and accordingly default decoding is UTF-8. The webpage encoding rule of GB2312 is similar thereto.
For the decoding of UTF-8 and GB2312, the search engine can be used to determine the webpage encoding rule. Then it is necessary to search and collect in advance the webpage encoding rule to which each search engine is applied.
In addition, in the search keyword information, %xx%xx format is URL encoding (UTF-8 or GB2312); in GB2312 a Chinese character is constituted of two groups of %xx, and in UTF-8 the Chinese character is constituted of three groups of %xx; if UTF-8 decoding mode is used to decode GB2312 codes, messy codes may occur.
Since UTF-8 is constituted of three groups of %xx and GB2312 is constituted of two groups of %xx, if UTF-8 decoding mode is used to decode GB2312 and successfully decode, then a length of decoded character is bound to be shortened. For example, four Chinese characters by the GB2312 URL encoding are “%C7%EF%BA%AE%B2%A9%BF%CD”. When using UTF-8 encoding mode to decode, if successful, the length of decoded characters may be two and half Chinese characters. If failed, it means that the webpage encoding rule is GB2312 encoding mode.
Therefore, the recommendation server may employ following steps to identify the webpage encoding rule of URL:
1. obtaining search keyword information, wherein it is necessary to translate non-Chinese URL to remove English;
2. getting the number (x) of groups of the search keyword information; for example, the search keyword information “q=%C7%EF%BA%AE%B2%A9%BF%CD” is divided into 8 groups;
3. using UTF-8 decoding mode to decode the obtained encoding string;
4. if the decoding is failed (for example, program failure), then going to Step 8;
5. if successfully decoded, obtaining a length (y) of decoded character string and comparing with a number dividing the group number of overall search keyword information by 3;
6. if x!=y, then going to Step No. 8;
7. if x=y, then using the obtained character string as the search keywords; and
8. decoding with GB2312 mode and using the obtained character string as the search keywords.
It should be explained that, any one or more of Sub-Step S11, Sub-Step S12 and Sub-Step S13 can be applied to this embodiment of the disclosure, which is not limited thereby. For example, before loading current webpage, the URL information of current webpage can be sent to the recommendation server; and after loading current webpage, the title information can be continuously sent to the recommendation server. As another example, the URL information of current webpage and the Refer information of current webpage can be sent to the recommendation server.
In practice, upon the receipt of the recommendation information request sent at the browser side, the recommendation server may search for the recommendation information corresponding to the webpage state information about the current webpage.
In order to increase user viscosity, most of platforms may push a variety of information. In other words, push servers for recommendation information have already been disposed.
However, in this embodiment of the disclosure, the recommendation server could be a individually disposed server; or, individual transfer servers can be disposed and then existing push servers are multiplexed. Therefore, one machine may have multiple functions without individually disposing a set of new recommendation servers, thereby greatly reducing the cost.
In particular, the transfer server can receive the webpage state information sent from the browser, make statistics on the user behavior information, and then send http to the push server to request for NLP (Natural Language Processing) service. The information interaction can be achieved between the transfer server and the push server by a predefined format (for example, proto). The transfer server may decode the recommendation information request and add the information which is not submitted by the browser but necessary for the push server (for example, request IP) to the request for the use of the push server. The push server may search for the recommendation information by using NLP technique, and then the transfer server may return it to the browser.
For example, information of the predefined format proto could include one or more kind of operation information (message StringPair), URL information (message URL), message request body (message ReqBody), message response body (message RespBody), request message (message Request) and response message (message Response), wherein
The URL information (message URL) may record information about webpage URL sent from the browser, such as byte character (charset), webpage type (type), URL itself (url), webpage server identification (host), hyperlink path (uniurl), webpage title (title). A specific example is as follows:
The message request body (message ReqBody) may include request message identification (for example, ID), URL type of current webpage (page_url) and Refer information type of current webpage (page_refers), for example. A specific example is as follows:
The message response body (message RespBody) may include response message identification (for example, ID), recommendation information identifier (sid) and display data of exhibition window, for example. A specific example is as follows:
The request message (message Request) may include request type (ReqType type), product (product), subtype of product (combo), browser version (browser_ver), user identification (mid) and extended information (0), for example. A specific example is as follows:
The response message (message Response) may include head information (head) and body information (body). A specific example is as follows:
Step 104, loading the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
In a specific implementation, the recommendation information may include item data and display attribute data, wherein the item data could be HMTL documents in conformity with a browser definition standard, as substantial contents of the recommendation information; and the display attribute data could be parameter data set for loading an exhibition window of the item data by the recommendation server in accordance with the current browser and the item data.
In a preferred embodiment of the disclosure, Step 104 may comprise sub-steps of:
Sub-Step S21, generating an exhibition window in the browser window of the current webpage at the browser side in accordance with the display attribute data.
In a specific implementation, the display attribute data may be represented by the form of a Key-Value pair. The display attribute data may include a position, height and width of the exhibition window, a position of the item data in the exhibition window, and positions of function keys of the exhibition window in the exhibition window, for example.
For example, the display data may include height:97, which means that the display window has a height of 97px (pixel). In practice, the exhibition window may be generated below the current webpage with a height of 97px and a width in consistent with a main window of the browser; a partition line with a height of 3px is provided on the display window; and the left side of the item data has a 20px distance from a frame of the browser, for example.
Herein, the function keys of exhibition window could include a closing key and a settings key. In a life cycle of the recommendation information, when the user clicks on the closing key, the exhibition window may shut up accordingly and will not display any more. With the settings key, the user may selectively set the exhibition window to be automatically open or manually open.
Sub-Step S22, receiving the item data sent from the recommendation server.
In a preferred example of the embodiment of the disclosure, the browser side may have a recommendation information identifier corresponding to current recommendation information established at the recommendation server side.
In this example, Step S22 may further comprise sub-steps of:
Sub-Step S221, receiving the item data sent from the recommendation server with respect to the exhibition window and the recommendation information identifier corresponding to the current recommendation information.
The recommendation information identifier (sid) could be an identification number of session established between the recommendation server and the browser. In other words, a unique session identifier is provided between the display window in each browser and the recommendation server, such that the recommendation server can easily transfer the recommendation information with a specified display window in its session.
Sub-Step S23, displaying the item data in the exhibition window.
In a specific implementation, the loading can be performed in accordance with a preset position of the item data by the display attribute data.
It should be explained that, before the HTML texts of the current webpage are completely loaded, the exhibition window can be set to a hidden attribute which includes function keys in non-clickable state. After the HTML texts of the current webpage are completely loaded, when a mouse wheel rolling event within the current webpage is monitored and the recommendation information is set to be “actively start”, then the exhibition window may be popped up directly to display the item data.
The exhibition window may vary according to the width of main window of the browser with the height thereof unchanged. The item data can be self-adapted gradually according to the width of browser. For example, the item data is increased according to the increment in the width; and the item data is reduced according to the reduction in the width.
In a preferred example of the embodiment of the disclosure, the item data could include one or more of following items:
In particular, the item data could include one or more items. For example, on a left side of the exhibition window, the text information such as “Sun” and “Moon” corresponds to the image information, and on a right side of the exhibition window, “Halley's Comet” and “Titan” only correspond to text information.
Of course, the aforesaid item data is only exemplary. In the implementation of the embodiment of the disclosure, it is possible to set other item data according to the practical situation, which is not restricted by the embodiment of the disclosure.
In the application of the embodiment of the disclosure, each webpage window at the browser side may store the corresponding recommendation information. The browser may be formed of Tab webpage windows. If a webpage loaded in each Tab webpage window conforms to the preset condition, then the recommendation information corresponding to the current webpage may be loaded.
In a preferred embodiment of the disclosure, the method may further comprises steps of:
Step 105, when the recommendation information is triggered, initiating a search request on the search engine by the recommendation information.
In a specific implementation, a trigger point is embedded in the item data. When the user selects an item of the item data by a mouse click or a special function key, then the text information corresponding to the item data may be used to initiate the search request on the search engine.
Step 106, loading a search result obtained by using the recommendation information to search in accordance with the search request through the search engine.
In a specific implementation, the browser may newly open a webpage window, and the search result returned by the search engine may be loaded.
In this embodiment of the disclosure, each URL corresponding to the search result webpage initiated by the recommendation information may have a uniform src identifier to identify that the search is initiated by the recommendation information. The search engine may make statistics on the corresponding user behavior information such as UV (unique visitor, which refers to different natural persons browsing this webpage by accessing the Internet) and PV (Page View, which refers to page views or click rates wherein one is recorded every time a user visits each webpage in a website) and then send it to the recommendation server. The recommendation server may return corresponding recommendation information to the browser side where the recommendation information is requested in accordance with the user behavior information. For example, a URL of a search result webpage initiated by the recommendation information could be as follows:
According to the disclosure, in response to the request of loading the current webpage, the method may receive the recommendation information loading identifier, request for the recommendation information on the recommendation server and load it in the browser window, and load webpage behavior to obtain the recommendation information according to user's request, thereby increasing coverage of the recommendation information and satisfying with user's demand with an improved practicability. Therefore the recommendation information can more exactly reflect the user's personalized interests and hobbies, whereby pushing news information to improve the matching ratio of the user's interests and hobbies with the recommendation information. The user may obtain his or her interested recommendation information without manually searching for and filtering information, thereby reducing operation steps of search, comparison and filtration for obtaining interested information and improving efficiency of obtaining user's interested information. In the meanwhile, since user's operation steps are reduced, the resource consumption of the browser and server can be reduced and accordingly the occupation of network resource can be lowered.
With reference to
Step 201, at a web address security assembly side, monitoring that a browser in a computer system where a web address security assembly is located initiates a loading request of current webpage.
Step 202, extracting web address information of current webpage from the loading request.
In a specific implementation, the web address security assembly may monitor a webpage loading request by a specified response event interface. For example, when, by the specified response event interface achieving a standard plug-in mechanism, a URL of webpage corresponding to the web address requested to visit by the browser is obtained, it is indicated that the loading request of current webpage initiated by the browser is monitored. For example, in a Trident kernel browser, such as an IE (Internet Explorer) browser, a Browser Helper Object (BHO) plug-in mechanism can be used, and by responding to a “BeforeNavigate2” event, a webpage web address currently being loaded by the browser can be obtained. In a Webkit kernel browser, such as a Chrome browser, a Netscape Plug-in Application Programming Interface (NPAPI) plug-in mechanism can be used to obtain a web address currently being loaded by the browser.
Or, in response to a request of loading webpage, the browser may first send the request of loading webpage to the web address security assembly.
Step 203, performing security verification on the current webpage by using the web address information, and determining the current webpage to be a safe webpage.
In this embodiment of the disclosure, the current webpage corresponding to the loading request is a verified safe webpage.
In practice, the web address security assembly may first perform a normalized processing on the current webpage URL. For example, uppercase and lowercase letters in web address (including information, such as protocol, host name, path name, file name and parameter) are unified, and redundant path symbols and parameters in the URL are removed.
For example, the current webpage URL is: HTTp://www.A.com//aBc/abc.Php?A=1;
The uppercase and lowercase letters therein are unified to be lowercase letters: http://www.a.com//abc/abc.php?a=:1;
The redundant path symbols are removed as follows: http://www.a.com/abc/abc.php?a=1;
Then, the web address security assembly may extract web address cipher text corresponding to the current webpage URL. For the web address, three types of key information are URL itself (url), host name of web address (host) and first domain name section of web address (domain name).
In particular, the host name could be a host part with the removal of information such as path symbol, protocol head and port number in the URL, and the first domain name section could be traced back level by level from right to left according to the host name of URL. Optionally, when obtaining the first domain name section, a maximum 7 levels can be traced back from right to left.
If a right-to-left first level root domain name of the host name of the current webpage URL is an international top-level domain name, then the first domain name section of the current webpage URL is a first level sub-domain name of the host name of the current webpage URL. Herein, the international top-level domain name may refer to common top-level domain name such as “com”, “net”, “org”, “edu” and “gov”. For example, the host name of the current webpage URL is www.a.com, the first level root domain name is “com”, and then its first level sub-domain name “a.com” may be extracted to be the first domain name section of the current webpage URL.
If the right-to-left first level root domain name of the host name of the current webpage URL is a country code top-level domain name and the first level sub-domain name includes international top-level domain name, then the first domain name section of the current webpage URL is a second level sub-domain name of the host name of the current webpage URL. Herein, the country code top-level domain name may refer to special top-level domain name such as “cn” and “hk”. For example, the host name of the current webpage URL is www.a.com.cn, its right-to-left first level root domain name is “cn”, the first level sub-domain name is “com.cn”, and then its second level sub-domain name “a.com.cn” may be extracted to be the first domain name section of the current webpage URL.
If the host name of the current webpage URL uses a dynamic domain name, then the first domain name section of the current webpage URL is a next level sub-domain name of the host name of the current webpage URL extracted from the dynamic domain name towards right hand. Herein, the dynamic domain name refers to some second or third level dynamic domain names, such as “3322.org”, “s.3322.org” and “s.3322.nct” dynamic domain name. For example, the host name of the current webpage URL is www.a.3322.org wherein a dynamic domain name “3322.org” is used, then next level sub-domain name “a.3322.org” is extracted from the dynamic domain name towards right hand to be the first domain name section of the current webpage URL.
In this embodiment of the disclosure, after the current webpage URL is obtained, feature values of any one or more of the three types of information, such as host name of URL and the first domain name section, can be extracted to be the cipher text. Optionally, the feature value could be a Hash value. Particularly, the feature value could be a Hash value calculated on the basis of Message Digest Algorithm fifth edition, (md5), or a feature code capable of uniquely identifying original information (url, host, domain name) such as SIIA1 code or CRC (Cyclic Redundancy Check) code. In following examples, description will be given by way of 32-bit md5 Hash value.
For example, the current webpage URL is: http://www.a.com/abc/abc.php?a=1; according to above method, the obtained host name of the current webpage URL is: www.a.com; and the obtained first domain name section of the current webpage URL is: a.com.
Calculated 32-bit md5 Hash value of the current webpage URL itself is:
Calculated 32-bit md5 Hash value of the host name of the current webpage URL is:
Calculated 32-bit md5 Hash value of the first domain name section of the current webpage URL is:
The above calculated 32-bit md5 Hash value of the current webpage URL, the 32-bit md5 Hash value of the host name of the current webpage URL and the 32-bit md5 Hash value of the first domain name section of the current webpage URL are the web address cipher texts of the current webpage URL.
In above example where the current webpage URL is: http://www.a.com/abc/abc.php?a=1, an obtained set of web address cipher texts of the current webpage URL could be as follows:
Next, the web address security assembly may use the web address cipher text corresponding to the current webpage URL to match in a cipher text database. If the web address cipher text corresponding to the current webpage URL matches with a cipher text which is stored in the cipher text database and which is marked as a malicious web address, then the current webpage could be determined to be a dangerous webpage; if the web address cipher text corresponding to the current webpage URL matches with a cipher text which is stored in the cipher text database and which is marked as a safe web address, then the current webpage could be determined to be a safe webpage.
It should be explained that the cipher text database stores cipher texts marked as malicious web address and/or safe web address in advance. These cipher texts may be obtained from a great number of known URLs of malicious web address and/or safe web address. Optionally, data key values in the cipher text database may be stored in accordance with feature values of three types of key information (web address url, the web address host and the web address domain name). The key values of the three types of key information may be marked on the basis of safe web address and malicious web address, respectively. In particular, the cipher text marked as malicious web address may include one or more types of following information: a feature value of malicious URL, a feature value of the host name of malicious URL and a feature value of the first domain name section of malicious URL. The cipher text marked as safe web address may include one or more types of following information: a feature value of safe URL, a feature value of the host name of safe URL and a feature value of the first domain name section of safe URL.
The cipher text database may be locally stored in the web address security assembly or in a specified cipher text server.
With the application of this embodiment of the disclosure, the cipher text server may send information in the cipher text database to the web address security assembly to update the local cipher text database at preset time (for example, 6:00 am every morning and 12:00 am every Saturday).
It should be explained that the embodiment of the disclosure may apply any one or more of the three preset conditions. For example, the current webpage is a webpage corresponding to a search result item in a search result webpage of a search engine and a safe webpage. As another example, the current webpage is specified webpage and a safe webpage. These are not restricted by the embodiment of the disclosure.
Step 204, determining whether the loading request conforms to a preset condition, and if yes, proceeding to Step 205;
In practice, the preset condition may include:
Of course, the aforesaid preset conditions are only exemplary. In the implementation of the embodiment of the disclosure, it is possible to set other preset conditions according to the practical situation, which is not restricted by the embodiment of the disclosure. Further, in addition to the aforesaid preset conditions, a person skilled in the art may employ other preset conditions according to the practical demands, which is not restricted by the embodiment of the disclosure.
Step 205, generating a recommendation information loading identifier.
For example, information generated by the web address security assembly with respect to the loading request of current webpage may include:
Herein, tip.info is an information field returned upon the determination of the preset conditions by the loading request of current webpage to which the web address security assembly is directed. If req=1, then it is a recommendation information loading identifier, indicating there is an allowance for requesting the recommendation information on the recommendation server; if req=0, then it indicates there is no allowance for requesting the recommendation information from the recommendation server. Of course, in the embodiment of the disclosure, the situations wherein req=2 and req=3 may be included. For example, existing data is used to determine that the loading of a webpage allows to request the recommendation information from the recommendation server. However, in a situation that the current network is unstable or the webpage is attacked, then the web address security assembly may temporarily configure the loading request of the webpage to be req=2 without modifying existing data, indicating there is no allowance for requesting the recommendation information from recommendation server. After the special situation is eliminated, the loading request of the webpage may be determined according to the existing data.
Upon the determination on the loading request by the preset conditions, the disclosure may not allow the loading request inconsistent with the preset conditions to request the recommendation information, while allowing the loading request consistent with the preset conditions to request the recommendation information, thereby greatly reducing the requests for the recommendation information from the recommendation server and significantly lowering the resource occupation of the recommendation server.
Step 206, sending the recommendation information loading identifier to the browser, wherein the browser is used to request for the recommendation information from its corresponding recommendation server in accordance with webpage state information about the current webpage and load the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
The web address security assembly may send the generated information at least including the recommendation information loading identifier to the browser, and the browser may carry on decoding in accordance with the predefined rule and then perform subsequent loading operation based on a decoded instruction.
It should be explained that, since the embodiment of the method for detecting web address may correspond to the embodiment of the method for loading recommendation information, the description thereof is relatively simple. For the relevant part, reference can be made to the embodiment of the method for loading recommendation information. The detailed description thereof will be omitted herein
With reference to
Step 301, initiating a loading request of a current webpage at a browser side.
The loading request of the current webpage could refer to an instruction to load a webpage sent by a user. For example, the user may open a webpage by clicking a link or by inputting web address at an address bar. When the user instructs to click a link, it is equivalent to a receipt of an instruction to load a webpage from the user; similarly, when the user inputs web address at the address bar and clicks OK button or presses the Enter key, it is also equivalent to a receipt of an instruction to load a webpage from the user.
Step 302, determining the receipt of a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located, wherein the recommendation information loading identifier is a recommendation information loading identifier sent to the browser when the web address security assembly determines the current webpage corresponding to the loading request to be a webpage corresponding to a search result item in a search result webpage of a previous search engine.
With the application of this embodiment of the disclosure, when it is monitored that the browser requests to load the webpage, the web address security assembly may determine the preset condition of the webpage which is requested to load. When determining that the loading request conforms to the preset condition, the web address security assembly generates the recommendation information loading identifier and returns it to the browser. When determining that the loading request does not conform to the preset condition, the web address security assembly may not generate the recommendation information loading identifier and the browser loads the webpage normally.
Herein, the recommendation information loading identifier could be a ground on which the browser requests for the recommendation information from a recommendation server corresponding thereto. In the presence of the recommendation information loading identifier, the browser may request for the recommendation information from the recommendation server, and accordingly the recommendation server may return corresponding recommendation information.
In practice, the preset condition may include:
In practice, the loading request may include a current webpage URL (Universal Resource Locator). The web address security assembly may be used to perform a structural analysis on the current webpage URL, extract search keyword information in the URL, and decode the search keyword information in accordance with a predefined webpage encoding rule; and when successfully decoded, the current webpage may be determined to be a webpage corresponding to the search result item in the search result webpage of search engine.
In a specific implementation, a plenty of search engines are based upon a GET request mode. In other words, the URL is followed by a string of different parameters, and depending on the search engines, identifications of their search keyword information may be different. For example, the identifications of search keyword information could be “wd=”, “q=”, “hl=” and etc.
For example, in a URL of a search result webpage obtained by searching for a search keyword:
In other words, the recommendation server may abstract the regular expressions of the search keywords in advance, by which the search keyword information in the current webpage URL can be extracted.
Examples of the regular expressions of the search keywords are as follows:
In practice, after different webpage encoding rules (charset) are used to encode the same character, codes are differently generated. That is, the search keyword information in the aforesaid search result webpage URL of search engines A, B and C is different.
For example, the webpage encoding rule could be include UTF-8, GB2312 and etc.
UTF-8 normally generates default UTF-8 encoding, and accordingly default decoding is UTF-8. The webpage encoding rule of GB2312 is similar thereto.
For the decoding of UTF-8 and GB2312, the search engine can be used to determine the webpage encoding rule. Then it is necessary to search and collect in advance the webpage encoding rule to which each search engine is applied.
In addition, in the search keyword information,%xx%xx format is URL encoding (UTF-8 or GB2312); in GB2312 a Chinese character is constituted of two groups of %xx, and in UTF-8 the Chinese character is constituted of three groups of %xx; if UTF-8 decoding mode is used to decode GB2312 codes, messy codes may occur.
Since UTF-8 is constituted of three groups of %xx and GB2312 is constituted of two groups of %xx, if UTF-8 decoding mode is used to decode GB2312 and successfully decode, then a length of decoded character is bound to be shortened. For example, four Chinese characters by the GB2312 URL encoding are “%C7%EF%BA%AE%B2%A9%BF%CD”. When using UTF-8 encoding mode to decode, if successful, the length of decoded characters may be two and half Chinese characters. If failed, it means that the webpage encoding rule is GB2312 encoding mode.
Therefore, following steps can be employed to identify the webpage encoding rule of URL:
1. obtaining search keyword information, wherein it is necessary to translate non-Chinese URL to remove English;
2. getting the number (x) of groups of the search keyword information; for example, the search keyword information “q=%C7%EF%BA%AE%B2%A9%BF%CD” is divided into 8 groups;
3. using UTF-8 decoding mode to decode the obtained encoding string;
4. if the decoding is failed (for example, program failure), then going to Step 8;
5. if successfully decoded, obtaining a length (y) of decoded character string and comparing with a number dividing the group number of overall search keyword information by 3;
6. if x!=y, then going to Step No. 8;
7. if x=y, then using the obtained character string as the search keywords; and
8. decoding with GB2312 mode and using the obtained character string as the search keywords.
In a preferred example of the embodiment of the disclosure, the preset conditions may further comprise:
the current webpage corresponding to the loading request is a verified safe webpage.
In this example, the recommendation information loading identifier may also be a recommendation information loading identifier sent to the browser when the web address security assembly verifies that the current webpage corresponding to the loading request is a safe webpage.
Step 303, in accordance with the search keyword information in Refer information of current webpage and/or web address information of current webpage, requesting recommendation information from a recommendation server corresponding to the browser.
In a specific implementation, the Refer information of current webpage could be information which records a URL corresponding to a search result webpage obtained by submitting search keywords in the search engine.
The web address information of current webpage could be information which records a URL of the current webpage requested to load.
For example, when the user inputs search keywords “mobile phone” on the search engine and opens “XX Encyclopedia” webpage in a search result webpage item, the browser may send following webpage state information to the server:
Upon the receipt of a request for the recommendation information from the browser, the recommendation server may employ the search keyword information in the Refer information of current webpage and/or the web address information of current webpage to search for the recommendation information corresponding to the webpage state information.
In a preferred embodiment of the disclosure, Step 303 may comprise sub-steps of:
Sub-Step S31, sending the Refer information of current webpage and/or the web address information of current webpage to a recommendation server corresponding to the browser to request for the recommendation information.
The recommendation server is used to perform URL structure analysis by using the URL corresponding to the search result webpage of the Refer information of the current webpage in accordance with the request, extract search keyword field in the URL corresponding to the search result webpage, decode the search keyword field in accordance with a predefined webpage encoding rule to obtain search keywords, and search for the recommendation information corresponding to the search keywords, and/or search for the recommendation information corresponding to web address information of current webpage in the Refer information of current webpage.
For the web address information of current webpage, the recommendation server may obtain a parent webpage layer by layer in accordance with the current webpage URL, then extract a tag of each layer of webpage, extract keywords, and in the end search for the corresponding recommendation information in accordance with the keywords.
For example, the current webpage URL is http://www.***.com/flash/72550.htm, with a webpage tag of the Three Kingdoms Town, which is a kind of flash game; its parent webpage is http://www.***.com/special/1.htm, with a webpage tag of two-player mini-game of the all; its parent webpage of the parent webpage is http://www.***.com/, which is the homepage of website, with a tag of web game platform. The keywords for extraction would be Flash mini-game, and the recommendation information corresponding to the flash mini-game is searched for. For example, top N of the most popular flash mini-games in current network are searched for, wherein N is a positive integer.
For the Refer information of current webpage, the recommendation server may extract the search keywords by the aforesaid method in which the web address security assembly determines the current webpage corresponding to the loading request to be a webpage corresponding to the search result item in the search result webpage of previous search engine, and then search for the corresponding recommendation information in accordance with the search keywords.
In practice, upon the receipt of the recommendation information request sent at the browser side, the recommendation server may search for the recommendation information corresponding to the webpage state information about the current webpage.
In order to increase user viscosity, most of platforms may push a variety of information. In other words, push servers for recommendation information have already been disposed.
However, in this embodiment of the disclosure, the recommendation server could be a individually disposed server; or, individual transfer servers can be disposed and then existing push servers are multiplexed. Therefore, one machine may have multiple functions without individually disposing a set of new recommendation servers, thereby greatly reducing the cost.
In particular, the transfer server can receive the webpage state information sent from the browser, make statistics on the user behavior information, and then send http to the push server to request for NLP (Natural Language Processing) service. The information interaction can be achieved between the transfer server and the push server by a predefined format (for example, proto). The transfer server may decode the recommendation information request and add the information which is not submitted by the browser but necessary for the push server (for example, request IP) to the request for the use of the push server. The push server may search for the recommendation information by using NLP technique, and then the transfer server may return it to the browser.
For example, information of the predefined format proto could include one or more kind of operation information (message StringPair), URL information (message URL), message request body (message ReqBody), message response body (message RespBody), request message (message Request) and response message (message Response), wherein
The URL information (message URL) may record information about webpage URL sent from the browser, such as byte character (charset), webpage type (type), URL itself (url), webpage server identification (host), hyperlink path (uniurl), webpage title (title). A specific example is as follows:
The message request body (message ReqBody) may include request message identification (for example, ID), URL type of current webpage (page_url) and Refer information type of current webpage (page_refers), for example. A specific example is as follows:
The message response body (message RespBody) may include response message identification (for example, ID), recommendation information identifier (sid) and display data of exhibition window, for example. A specific example is as follows:
The request message (message Request) may include request type (ReqType type), product (product), subtype of product (combo), browser version (browser_ver), user identification (mid) and extended information (kv), for example. A specific example is as follows:
The response message (message Response) may include head information (head) and body information (body). A specific example is as follows:
Step 304, loading the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
In a specific implementation, the recommendation information may include item data and display attribute data, wherein the item data could be HMTL documents in conformity with a browser definition standard, as substantial contents of the recommendation information; and the display attribute data could be parameter data set for loading an exhibition window of the item data by the recommendation server in accordance with the current browser and the item data.
In a preferred embodiment of the disclosure, Step 304 may comprise sub-steps of:
Sub-Step S41, generating an exhibition window in the browser window of the current webpage at the browser side in accordance with the display attribute data.
In a specific implementation, the display attribute data may be represented by the form of a Key-Value pair. The display attribute data may include a position, height and width of the exhibition window, a position of the item data in the exhibition window, and positions of function keys of the exhibition window in the exhibition window, for example.
For example, the display data may include height:97, which means that the display window has a height of 97px (pixel). In practice, the exhibition window may be generated below the current webpage with a height of 97px and a width in consistent with a main window of the browser; a partition line with a height of 3px is provided on the display window; and the left side of the item data has a 20px distance from a frame of the browser, for example.
Herein, the function keys of exhibition window could include a closing key and a settings key. In a life cycle of the recommendation information, when the user clicks on the closing key, the exhibition window may shut up accordingly and will not display any more. With the settings key, the user may selectively set the exhibition window to be “automatically open” or “manually open”.
Sub-Step S42, receiving the item data sent from the recommendation server.
In a preferred example of the embodiment of the disclosure, the browser side may have a recommendation information identifier corresponding to current recommendation information established at the recommendation server side.
In this example, Step S42 may further comprise sub-steps of:
Sub-Step S421, receiving the item data sent from the recommendation server with respect to the exhibition window and the recommendation information identifier corresponding to the current recommendation information.
The recommendation information identifier (sid) could be an identification number of session established between the recommendation server and the browser. In other words, a unique session identifier is provided between the display window in each browser and the recommendation server, such that the recommendation server can easily transfer the recommendation information with a specified display window in its session.
Sub-Step S43, displaying the item data in the exhibition window.
In a specific implementation, the loading can be performed in accordance with a preset position of the item data by the display attribute data.
It should be explained that, before the HTML texts of the current webpage are completely loaded, the exhibition window can be set to a hidden attribute which includes function keys in non-clickable state. After the HTML texts of the current webpage are completely loaded, when a mouse wheel rolling event within the current webpage is monitored and the recommendation information is set to be “actively start”, then the exhibition window may be popped up directly to display the item data.
The exhibition window may vary according to the width of main window of the browser with the height thereof unchanged. The item data can be self-adapted gradually according to the width of browser. For example, the item data is increased according to the increment in the width; and the item data is reduced according to the reduction in the width.
In a preferred example of the embodiment of the disclosure, the item data could include one or more of following items:
In particular, the item data could include one or more items. For example, on a left side of the exhibition window, the text information such as “Sun” and “Moon” corresponds to the image information, and on a right side of the exhibition window, “Halley's Comet” and “Titan” only correspond to text information.
Of course, the aforesaid item data is only exemplary. In the implementation of the embodiment of the disclosure, it is possible to set other item data according to the practical situation, which is not restricted by the embodiment of the disclosure.
In the application of the embodiment of the disclosure, each webpage window at the browser side may store the corresponding recommendation information. The browser may be formed of Tab webpage windows. If a webpage loaded in each Tab webpage window conforms to the preset condition, then the recommendation information corresponding to the current webpage may be loaded.
With reference to
Step 401, initiating a loading request of a current webpage at a browser side.
Step 402, determining the receipt of a recommendation information loading identifier sent with respect to the loading request from a web address security assembly in a computer system where the browser is located, wherein the recommendation information loading identifier is a recommendation information loading identifier sent to the browser when the web address security assembly determines the current webpage corresponding to the loading request to be a webpage corresponding to a search result item in a search result webpage of a previous search engine.
Step 403, in accordance with the search keyword information in Refer information of current webpage and/or web address information of current webpage, requesting recommendation information from a recommendation server corresponding to the browser.
Step 404, sending extended information which records setting parameters when previously loading other recommendation information to the recommendation server, wherein the recommendation server is used to make statistics on user behavior information by the extended information and in accordance with the user behavior information, return corresponding recommendation information to the browser side requesting for the recommendation information.
In an optional example according to this embodiment of the disclosure, the extended information may include one or more types as follows:
For example, the extended information (which could be represented by “KV”, i.e., Key-Value pair) may include:
In practice, by the extended information, the browser may send the information which records setting parameters when other recommendation information is previously loaded to the recommendation server; the recommendation server may be used to make statistics on user behavior information by the extended information, and in accordance with the user behavior information, return corresponding recommendation information to the browser side requesting for the recommendation information. For example, in the case that a certain kind of recommendation information is frequently manually closed by the user, the recommendation server may exclude this kind of recommendation information from the preset condition and no longer recommend it.
In this embodiment of the disclosure, by the user behavior information, the information which is suitable to be recommended and which is not suitable to be recommended can be determined, thus following user's behavior habits, satisfying user's demands and increasing the use efficiency of the recommendation server, the browser and the bandwidth.
Step 405, loading the recommendation information requested from the recommendation server in a browser window of the current webpage at the browser side.
Step 406, when the recommendation information is triggered, initiating a search request on the search engine by using the recommendation information.
In a specific implementation, a trigger point is embedded in the item data. When the user selects an item of the item data by a mouse click or a special function key, then the text information corresponding to the item data may be used to initiate the search request on the search engine.
Step 407, loading a search result obtained by using the recommendation information to search in accordance with the search request through the search engine.
In a specific implementation, the browser may newly open a webpage window, and the search result returned by the search engine may be loaded.
In this embodiment of the disclosure, each URL corresponding to the search result webpage initiated by the recommendation information may have a uniform src identifier to identify that the search is initiated by the recommendation information. The search engine may make statistics on the corresponding user behavior information such as UV (unique visitor, which refers to different natural persons browsing this webpage by accessing the Internet) and PV (Page View, which refers to page views or click rates wherein one is recorded every time a user visits each webpage in a website) and then send it to the recommendation server. The recommendation server may return corresponding recommendation information to the browser side where the recommendation information is requested in accordance with the user behavior information. For example, a URL of a search result webpage initiated by the recommendation information could be as follows:
According to the disclosure, in response to the request of loading the current webpage, the method may receive the recommendation information loading identifier, request for the recommendation information on the recommendation server and load it in the browser window, and load webpage behavior to obtain the recommendation information according to user's request, thereby increasing coverage of the recommendation information and satisfying with user's demand with an improved practicability. Therefore the recommendation information can more exactly reflect the user's personalized interests and hobbies, whereby pushing news information to improve the matching ratio of the user's interests and hobbies with the recommendation information. The user may obtain his or her interested recommendation information without manually searching for and filtering information, thereby reducing operation steps of search, comparison and filtration for obtaining interested information and improving efficiency of obtaining user's interested information. In the meanwhile, since user's operation steps are reduced, the resource consumption of the browser and server can be reduced and accordingly the occupation of network resource can be lowered.
With reference to
Step 501, at a web address security assembly, monitoring that a browser in a computer system of a query assembly initiates a loading request of current webpage.
Step 502, extracting web address information of current webpage from the loading request.
In a specific implementation, the web address security assembly may monitor a webpage loading request by a specified response event interface. For example, when, by the specified response event interface achieving a standard plug-in mechanism, a URL of webpage corresponding to the web address requested to visit by the browser is obtained, it is indicated that the loading request of current webpage initiated by the browser is monitored. For example, in a Trident kernel browser, such as an IE (Internet Explorer) browser, a Browser Helper Object (BHO) plug-in mechanism can be used, and by responding to a “BeforeNavigate2” event, a webpage web address currently being loaded by the browser can be obtained. In a Webkit kernel browser, such as a Chrome browser, a Netscape Plug-in Application Programming Interface (NPAPI) plug-in mechanism can be used to obtain a web address currently being loaded by the browser.
Or, in response to a request of loading webpage, the browser may first send the request of loading webpage to the web address security assembly.
Step 503, performing security verification on the current webpage by using the web address information and determining the current webpage to be a safe webpage. In practice, the web address security assembly may first perform a normalized processing on the current webpage URL. For example, uppercase and lowercase letters in web address (including information, such as protocol, host name, path name, file name and parameter) are unified, and redundant path symbols and parameters in the URL are removed.
For example, the current webpage URL is: HTTp://www.A.com//aBc/abc.Php?A=1;
The uppercase and lowercase letters therein are unified to be lowercase letters: http://www.a com//abc/abc.php?a=:1;
The redundant path symbols are removed as follows: http://www.a.com/abc/abc.php?a=1;
Then, the web address security assembly may extract web address cipher text corresponding to the current webpage URL. For the web address, three types of key information are URL itself (url), host name of web address (host) and first domain name section of web address (domain name).
In particular, the host name could be a host part with the removal of information such as path symbol, protocol head and port number in the URL, and the first domain name section could be traced back level by level from right to left according to the host name of URL. Optionally, when obtaining the first domain name section, a maximum 7 levels can be traced back from right to left.
If a right-to-left first level root domain name of the host name of the current webpage URL is an international top-level domain name, then the first domain name section of the current webpage URL is a first level sub-domain name of the host name of the current webpage URL. Herein, the international top-level domain name may refer to common top-level domain name such as “com”, “net”, “org”, “edu” and “gov”. For example, the host name of the current webpage URL is www.a.com, the first level root domain name is “com”, and then its first level sub-domain name “a.com” may be extracted to be the first domain name section of the current webpage URL.
If the right-to-left first level root domain name of the host name of the current webpage URL is a country code top-level domain name and the first level sub-domain name includes international top-level domain name, then the first domain name section of the current webpage URL is a second level sub-domain name of the host name of the current webpage URL. Herein, the country code top-level domain name may refer to special top-level domain name such as “cn” and “hk”. For example, the host name of the current webpage URL is www.a.com.cn, its right-to-left first level root domain name is “cn”, the first level sub-domain name is “com.cn”, and then its second level sub-domain name “a.com.cn” may be extracted to be the first domain name section of the current webpage URL.
If the host name of the current webpage URL uses a dynamic domain name, then the first domain name section of the current webpage URL is a next level sub-domain name of the host name of the current webpage URL extracted from the dynamic domain name towards right hand. Herein, the dynamic domain name refers to some second or third level dynamic domain names, such as “3322.org”, “s.3322.org” and “s.3322.nct” dynamic domain name. For example, the host name of the current webpage URL is www.a.3322.org wherein a dynamic domain name “3322.org” is used, then next level sub-domain name “a.3322.org” is extracted from the dynamic domain name towards right hand to be the first domain name section of the current webpage URL.
In this embodiment of the disclosure, after the current webpage URL is obtained, feature values of any one or more of the three types of information, such as host name of URL and the first domain name section, can be extracted to be the cipher text. Optionally, the feature value could be a Hash value. Particularly, the feature value could be a Hash value calculated on the basis of Message Digest Algorithm fifth edition, (md5), or a feature code capable of uniquely identifying original information (url, host, domain name) such as SIIA1 code or CRC (Cyclic Redundancy Check) code. In following examples, description will be given by way of 32-bit md5 Hash value.
For example, the current webpage URL is: http://www.a.com/abc/abc.php?a=1; according to above method, the obtained host name of the current webpage URL is: www.a.com; and the obtained first domain name section of the current webpage URL is: a.com.
Calculated 32-bit md5 Hash value of the current webpage URL itself is:
Calculated 32-bit md5 Hash value of the host name of the current webpage URL is:
Calculated 32-bit md5 Hash value of the first domain name section of the current webpage URL is:
The above calculated 32-bit md5 Hash value of the current webpage URL, the 32-bit md5 Hash value of the host name of the current webpage URL and the 32-bit md5 Hash value of the first domain name section of the current webpage URL are the web address cipher texts of the current webpage URL.
In above example where the current webpage URL is: http://www.a.com/abc/abc.php?a=1, an obtained set of web address cipher texts of the current webpage URL could be as follows:
Next, the web address security assembly may use the web address cipher text corresponding to the current webpage URL to match in a cipher text database. If the web address cipher text corresponding to the current webpage URL matches with a cipher text which is stored in the cipher text database and which is marked as a malicious web address, then the current webpage could be determined to be a dangerous webpage; if the web address cipher text corresponding to the current webpage URL matches with a cipher text which is stored in the cipher text database and which is marked as a safe web address, then the current webpage could be determined to be a safe webpage.
It should be explained that the cipher text database stores cipher texts marked as malicious web address and/or safe web address in advance. These cipher texts may be obtained from a great number of known URLs of malicious web address and/or safe web address. Optionally, data key values in the cipher text database may be stored in accordance with feature values of three types of key information (web address url, the web address host and the web address domain name). The key values of the three types of key information may be marked on the basis of safe web address and malicious web address, respectively. In particular, the cipher text marked as malicious web address may include one or more types of following information: a feature value of malicious URL, a feature value of the host name of malicious URL and a feature value of the first domain name section of malicious URL. The cipher text marked as safe web address may include one or more types of following information: a feature value of safe URL, a feature value of the host name of safe URL and a feature value of the first domain name section of safe URL.
The cipher text database may be locally stored in the web address security assembly or in a specified cipher text server.
With the application of this embodiment of the disclosure, the cipher text server may send information in the cipher text database to the web address security assembly to update the local cipher text database at preset time (for example, 6:00 am every morning and 12:00 am every Saturday).
In the embodiment of the disclosure, the web address security assembly may first perform a security verification on the current webpage. When the current webpage is determined to be a safe webpage, a subsequent determination on a webpage corresponding to the search result item may be performed.
Step 504, determining whether the current webpage corresponding to the loading request is a webpage corresponding to the search result item in the search result webpage of pervious search engine, and if yes, proceed to Step 305.
In a specific implementation, the web address security assembly may perform a structural analysis on the current webpage URL, extract search keyword information in the URL, and decode the search keyword information in accordance with a predefined webpage encoding rule; and when successfully decoded, the current webpage may be determined to be a webpage corresponding to the search result item in the search result webpage of search engine.
Step 505, generating a recommendation information loading identifier;
In a preferred embodiment of the disclosure, the recommendation information loading identifier may also be a recommendation information loading identifier sent to the browser when the web address security assembly verifies that the current webpage corresponding to the loading request is a safe webpage.
For the determination on the loading request of current webpage by the preset conditions for example in consistent with the webpage corresponding to the search result item and the safe webpage, the web address security assembly may generate the recommendation information loading identifier and return it to the browser.
For example, information generated by the web address security assembly with respect to the loading request of current webpage may include:
Herein, tip.info is an information field returned upon the determination of the preset conditions by the loading request of current webpage to which the web address security assembly is directed. If req=1, then it is a recommendation information loading identifier, indicating there is an allowance for requesting the recommendation information on the recommendation server; if req=0, then it indicates there is no allowance for requesting the recommendation information from the recommendation server. Of course, in the embodiment of the disclosure, the situations wherein req=2 and req=3 may be included. For example, existing data is used to determine that the loading of a webpage allows to request the recommendation information from the recommendation server. However, in a special situation that the current network is unstable or the webpage is attacked, then the web address security assembly may temporarily configure the loading request of the webpage to be req=2 without modifying existing data, indicating there is no allowance for requesting the recommendation information from recommendation server. After the special situation is eliminated, the loading request of the webpage may be determined according to the existing data.
Upon the determination on the loading request by the preset conditions such as the webpage corresponding to the search result item and the safe webpage, the disclosure may not allow the loading request inconsistent with the preset conditions to request the recommendation information, while allowing the loading request consistent with the preset conditions to request the recommendation information, thereby greatly reducing the requests for the recommendation information from the recommendation server and significantly lowering the resource occupation of the recommendation server.
Step 506, sending the recommendation information loading identifier to the browser, wherein the browser is used to request recommendation information from a recommendation server corresponding to the browser in accordance with the search keyword information in the Refer information of current webpage and/or the web address information of current webpage and to load the recommendation information requested from the recommendation server in the browser window of the current webpage at the browser side.
The web address security assembly may send the generated information at least including the recommendation information loading identifier to the browser, and the browser may carry on decoding in accordance with the predefined rule and then perform subsequent loading operation based on a decoded instruction.
The method embodiments, for the purpose of brief description, are described as a series of combined actions. However, it should be appreciated by those skilled in the art that the embodiments of the disclosure should not be restricted by the sequence of the actions as set forth, since some of actions could be performed in different sequence or simultaneously according to the embodiments of the disclosure. Moreover, it should also be appreciated by those skilled in the art that, the embodiments as described in the specification are preferred embodiments and actions concerned are not necessarily required in the embodiments of the disclosure.
With reference to
In a preferred embodiment of the disclosure, the preset condition may include:
In a preferred embodiment of the disclosure, the webpage state information may include one or more types:
In a preferred embodiment of the disclosure, the extended information may include one or more types:
In a preferred embodiment of the disclosure, the recommendation information requesting module 603 may be further configured to:
In a preferred embodiment of the disclosure, the recommendation information may include item data and display attribute data.
The recommendation information loading module 604 may also be configured to:
In a preferred embodiment of the disclosure, the browser side may have a recommendation information identifier corresponding to current recommendation information established at the recommendation server side.
The recommendation information loading module 604 may also be configured to:
receive the item data sent from the recommendation server with respect to the exhibition window and the recommendation information identifier corresponding to the current recommendation information.
In a preferred embodiment of the disclosure, the item data could include one or more of following types:
In a preferred embodiment of the disclosure, each webpage window at the browser side may store the corresponding recommendation information.
In a preferred embodiment of the disclosure, the device may further comprise following modules:
With reference to
In a preferred embodiment of the disclosure, the preset condition may include:
In a preferred embodiment of the disclosure, the device may further comprise following modules:
With reference to
In a preferred embodiment of the disclosure, the loading request may include a current webpage URL, and the web address security assembly may be used to perform a structural analysis on the current webpage URL, extract search keyword information in the URL, and decode the search keyword information in accordance with a predefined webpage encoding rule. When successfully decoded, the current webpage may be determined to be a webpage corresponding to the search result item in the search result webpage of search engine.
In a preferred embodiment of the disclosure, the recommendation information loading identifier may also be a recommendation information loading identifier sent to the browser when the web address security assembly verifies that the current webpage corresponding to the loading request is a safe webpage.
In a preferred embodiment of the disclosure, the device may also comprise a following module:
In a preferred embodiment of the disclosure, the extended information may include one or more types as follows:
In a preferred embodiment of the disclosure, the recommendation information requesting module 803 may be further configured to:
In a preferred embodiment of the disclosure, the recommendation information may include item data and display attribute data.
The recommendation information loading module 804 may also be configured to:
In a preferred embodiment of the disclosure, the browser side may have a recommendation information identifier corresponding to current recommendation information established at the recommendation server side.
The recommendation information loading module 804 may also be configured to:
receive the item data sent from the recommendation server with respect to the exhibition window and the recommendation information identifier corresponding to the current recommendation information.
In a preferred embodiment of the disclosure, the item data could include one or more of following types:
In a preferred embodiment of the disclosure, each webpage window at the browser side may store the corresponding recommendation information.
In a preferred embodiment of the disclosure, the device may further comprise following modules:
With reference to
In a preferred embodiment of the disclosure, the device may further comprise following modules:
With reference to
The web address security apparatus 1002 may include a device 10020 for detecting web address 10020, and the device for detecting web address may comprise following modules:
Functions and operation state of relevant modules are omitted herein. Reference could be made to related part in the aforesaid embodiments.
The recommendation server 1003 may store one or more pieces of recommendation information. The recommendation server 1003 may comprise following a module:
It should be explained that the web address security apparatus and the browser may be provided in the same computer (computing device) equipment.
With reference to
The web address security apparatus 1102 may comprise a device 11020 for detecting web address, and the device 11020 for detecting web address 11020 may comprise following modules:
The recommendation server 1103 may store one or more pieces of recommendation information. The recommendation server 63 may comprise following a module:
It should be explained that the web address security apparatus and the browser may be provided in the same computer (computing device) equipment. Since the embodiments of the device, the browser and the system are substantially similar to the method embodiments, the description thereof is relatively simple. Therefore, reference could be made to related parts of the method embodiments.
Each of components according to the embodiments of the disclosure can be implemented by hardware, or implemented by software modules operating on one or more processors, or implemented by the combination thereof. A person skilled in the art should understand that, in practice, a microprocessor or a digital signal processor (DSP) may be used to realize some or all of the functions of some or all of the components in the devices for loading recommendation information, detecting web address and loading recommendation information of search result according to the embodiments of the disclosure. The disclosure may further be implemented as device program (for example, computer program and computer program product) for executing some or all of the methods as described herein. Such program for implementing the disclosure may be stored in the computer readable medium, or have a form of one or more signals. Such a signal may be downloaded from the Internet websites, or be provided in carrier, or be provided in other manners.
For example,
The “an embodiment”, “embodiments” or “one or more embodiments” mentioned in the disclosure means that the specific features, structures or performances described in combination with the embodiment(s) would be included in at least one embodiment of the disclosure. Moreover, it should be noted that, the wording “in an embodiment” herein may not necessarily refer to the same embodiment.
Many details are discussed in the specification provided herein. However, it should be understood that the embodiments of the disclosure can be implemented without these specific details. In some examples, the well-known methods, structures and technologies are not shown in detail so as to avoid an unclear understanding of the description.
It should be noted that the above-described embodiments are intended to illustrate but not to limit the disclosure, and alternative embodiments can be devised by the person skilled in the art without departing from the scope of claims as appended. In the claims, any reference symbols between brackets form no limit of the claims. The wording “include” does not exclude the presence of elements or steps not listed in a claim. The wording “a” or “an” in front of an element does not exclude the presence of a plurality of such elements. The disclosure may be realized by means of hardware comprising a number of different components and by means of a suitably programmed computer. In the unit claim listing a plurality of devices, some of these devices may be embodied in the same hardware. The wordings “first”, “second”, and “third”, etc. do not denote any order. These wordings can be interpreted as a name.
Also, it should be noticed that the language used in the present specification is chosen for the purpose of readability and teaching, rather than explaining or defining the subject matter of the disclosure. Therefore, it is obvious for an ordinary skilled person in the art that modifications and variations could be made without departing from the scope and spirit of the claims as appended. For the scope of the disclosure, the publication of the inventive disclosure is illustrative rather than restrictive, and the scope of the disclosure is defined by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
201410040400.5 | Jan 2014 | CN | national |
201410041142.2 | Jan 2014 | CN | national |
The present disclosure is a national stage of International Application No. PCT/CN2014/095849 filed Dec. 31, 2014, which is based upon and claims priority to Chinese Patent Application No. 201410040400.5 and No. 201410041142.2, both filed Jan. 27, 2014, the entire contents of all of which are incorporated herein by reference.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2014/095849 | 12/31/2014 | WO | 00 |