Method and apparatus for determining occlusion of recommended information in a page
By obtaining the positional relationship between recommendation information and some nodes in the node tree on the page, it automatically determines whether the recommendation information is blocked, which solves the problem of recommendation information occlusion and improves detection efficiency and user experience.
Patent Information
- Application Number
- CN202011137628.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-10-22
- Publication Date
- 2025-06-24
- Estimated Expiration
- 2040-10-22
AI Technical Summary
On the page, the recommended information is easily blocked by other elements, resulting in a decrease in exposure and affecting the revenue of the traffic owner.
By obtaining the recommended information on the page and some nodes in the node tree, determine the positional relationship between the recommended information and some nodes, and determine whether there is an occlusion. The specific steps include obtaining recommendation information, selecting some nodes in the node tree that are not directly associated, determining the location of each node, and determining the location overlap to determine the occlusion.
It improves the efficiency of recommendation information occlusion detection, reduces the impact on users' browsing pages, reduces the demand for computing resources and bandwidth, and improves user experience.
Smart Images

Figure CN114385900B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of page processing, and particularly to a method for determining occlusion of recommended information in a page, an apparatus for determining occlusion of recommended information in a page, a computing device, and a computer-readable storage medium. Background Art
[0002] With the development of communication technologies and the progress of communication devices, the Internet technology has made great progress, profoundly changing people's production and lifestyle. In particular, with the popularization of smart terminals and the development of mobile Internet, people can browse web pages and access various services via the entrances in web pages anytime and anywhere.
[0003] In some page applications, service providers provide pages with a certain editing space for traffic owners to create and operate. Pages with high traffic volume operated by traffic owners become targets for publishing recommended information due to their large access traffic. In this case, traffic owners will benefit from publishing recommended information and the exposure of the published recommended information. Summary of the Invention
[0004] The present disclosure provides a method for determining occlusion of recommended information in a page, an apparatus for determining occlusion of recommended information in a page, a computing device, and a computer-readable storage medium that can alleviate, mitigate, or even eliminate one or more of the above problems.
[0005] According to one aspect of the present invention, there is provided a method for determining occlusion of recommended information in a page, characterized in that the method includes: obtaining recommended information in the page; selecting partial nodes from at least two nodes in the node tree of the page, where the at least two nodes are nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information, and the node tree is a tree structure generated based on the content nodes of the page; determining the position of the recommended information in the page and the position of the partial nodes in the page; and in response to at least partial coincidence of the position of the recommended information in the page and the position of the partial nodes in the page, determining that the recommended information is occluded.
[0006] In some embodiments, selecting partial nodes from at least two nodes in the node tree of the page, where the at least two nodes are nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information includes: selecting partial nodes from at least two nodes between the level of the nodes of the recommended information in the node tree of the page and the root level, where the at least two nodes are nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information.
[0007] In some embodiments, selecting partial nodes from at least two nodes between the level of the node of the recommended information in the node tree of the page and the level of the root node, where the at least two nodes are nodes other than the node of the recommended information and the directly associated nodes of the node of the recommended information, includes: obtaining N node layers from the level of the node of the recommended information to the level of the root node; randomly selecting M node layers from the N node layers; and randomly selecting O nodes other than the node of the recommended information and the directly associated nodes of the node of the recommended information from each of the M node layers as partial nodes, where N, M, and O are positive integers, and N ≥ M.
[0008] In some embodiments, randomly selecting M node layers from the N node layers includes: randomly selecting M node layers from the N node layers based on an algorithm, where the probability P(M) of M satisfies the following formula: P(M) = (λ^M)e^(-λ) / M!, where λ takes a positive value and e is the natural constant.
[0009] In some embodiments, randomly selecting M node layers from the N node layers further includes: setting λ to N / 3.
[0010] In some embodiments, randomly selecting M node layers from the N node layers based on an algorithm includes: randomly selecting M node layers from the N node layers based on an equal probability algorithm.
[0011] In some embodiments, randomly selecting O nodes other than the node of the recommended information and the directly associated nodes of the node of the recommended information from each of the M node layers as partial nodes includes: randomly selecting O nodes other than the node of the recommended information and the directly associated nodes of the node of the recommended information from each of the M node layers as partial nodes based on an equal probability algorithm.
[0012] In some embodiments, randomly selecting M node layers from the N node layers includes: in response to M being less than or equal to N / 2, randomly selecting M node layers from the N node layers.
[0013] In some embodiments, selecting partial nodes from at least two nodes between the level of the node of the recommended information in the node tree of the page and the level of the root node, where the at least two nodes are nodes other than the node of the recommended information and the directly associated nodes of the node of the recommended information, includes: obtaining N node layers from the level of the node of the recommended information to the level of the root node; randomly selecting M node layers from the N node layers; and randomly selecting M nodes other than the node of the recommended information and the directly associated nodes of the node of the recommended information from each of the M node layers as partial nodes, where N and M are positive integers, and N ≥ M.
[0014] In some embodiments, before selecting partial nodes from at least two nodes in the node tree of a page, where the at least two nodes are nodes other than the nodes of the recommended information and the direct associated nodes of the nodes of the recommended information, it further includes: obtaining the node tree of the page based on the virtual DOM of the page.
[0015] According to another aspect of the present invention, there is provided an apparatus for determining occlusion of recommended information in a page. The apparatus includes: an obtaining module configured to obtain the recommended information in the page; a selecting module configured to select partial nodes from at least two nodes in the node tree of the page, where the at least two nodes are nodes other than the nodes of the recommended information and the direct associated nodes of the nodes of the recommended information, and the node tree is a tree structure generated based on the content nodes of the page; a position determining module configured to determine the position of the recommended information in the page and the position of the partial nodes in the page; and an occlusion determining module configured to determine that the recommended information is occluded in response to at least partial overlap between the position of the recommended information in the page and the position of the partial nodes in the page.
[0016] According to another aspect of the present invention, there is provided a computing device including a memory and a processor. The memory is configured to store computer-executable instructions thereon, and the computer-executable instructions, when executed on the processor, execute any one of the above methods for determining occlusion of recommended information in a page.
[0017] According to another aspect of the present invention, there is provided a computer-readable storage medium having computer-readable instructions stored thereon, and the computer-readable instructions, when executed, implement any one of the above methods for determining occlusion of recommended information in a page.
[0018] Through the embodiments of the present invention, a simple and feasible method for preventing cheating of recommended information is provided. By determining whether at least partial overlap exists between the position of partial nodes in the page and the position of the recommended information in the page, it is automatically determined whether the recommended information is occluded by other elements in the page, without traversing all document nodes during the detection of recommended information occlusion. This improves the efficiency of detecting recommended information occlusion, reduces the impact of detecting recommended information occlusion on the user's browsing of the page, reduces the requirements for computer hardware resources and bandwidth, and improves the user experience. In addition, by excluding the direct associated nodes of the nodes of the recommended information, the efficiency is further improved, and the waste of computing resources and bandwidth is avoided. Description of the Drawings
[0019] In the following description of exemplary embodiments with reference to the drawings, more details, features, and advantages of the present invention are disclosed. The drawings are only for the purpose of illustrating the embodiments and are not considered as a limitation to the present disclosure. Moreover, throughout the drawings, the same reference numerals are used to represent the same or similar elements. In the drawings:
[0020] Figure 1 Schematically shows an example scenario to which some embodiments of the present invention can be applied;
[0021] Figures 2a - 2b Schematically shows a schematic diagram of a user interface;
[0022] Figure 3 Schematically shows a flowchart of a method for determining occlusion of recommended information in a page according to an embodiment of the present invention;
[0023] Figure 4a Schematically shows a structural diagram of a node tree according to some embodiments of the present disclosure;
[0024] Figure 4b Schematically shows a schematic diagram of a node tree of a real DOM according to the present disclosure;
[0025] Figure 4c Schematically shows a working principle diagram of a virtual DOM according to some embodiments of the present disclosure;
[0026] Figure 4d Schematically shows a classification schematic diagram of nodes of a node tree of a virtual DOM according to some embodiments of the present disclosure;
[0027] Figure 5 Schematically shows a schematic diagram of a document flow according to some embodiments of the present invention
[0028] Figure 6 Schematically shows a schematic block diagram of an apparatus for determining occlusion of recommended information in a page according to some embodiments of the present invention; and
[0029] Figure 7 Schematically shows a schematic block diagram of a computing system capable of implementing a method for determining occlusion of recommended information in a page according to some embodiments of the present invention. Detailed Description of the Invention
[0030] The following will describe several embodiments of the present invention in more detail with reference to the accompanying drawings so that those skilled in the art can understand and implement the present invention. However, the present invention can be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. On the contrary, these embodiments are provided so that the present invention will be thorough and complete, and will fully convey the scope of the present invention to those skilled in the art. These embodiments are for illustrative purposes and not for limiting the present invention.
[0031] It will be understood that although the terms first, second, third, etc. may be used herein to describe various elements, steps, and / or parts, these elements, steps, and / or parts should not be limited by these terms. These terms are only used to distinguish one element, step, or part from another. Thus, the first element, step, or part discussed below may be referred to as the second element, step, or part without departing from the teachings of the present invention.
[0032] The terms used herein are for the purpose of describing particular embodiments only and are not intended to limit the present invention. As used herein, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and / or "comprising", when used in this specification, specify the presence of the stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.
[0033] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. It will be further understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning that is consistent with their meaning in the relevant art and / or the context of this specification, and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
[0034] It should be noted that, on the premise of no conflict, the features in different embodiments can be combined arbitrarily.
[0035] Before introducing the embodiments of the present invention in detail, some related concepts are first explained:
[0036] 1. Traffic master: A person or organization that uses the page provided by the service provider with a certain editing space for creation and operation. For example, a qualified mini-program operator can voluntarily share a specified position in the mini-program with a person or organization (such as an advertiser) that has a need to publish recommended information for the display of recommended information, and thus can become a traffic master of the mini-program.
[0037] 2. Service provider: A person or organization that uses a server to provide a page with a certain editing space for the traffic master to create and operate and provides this page for Internet users to access. For example, a company that provides mini-programs.
[0038] 3. Recommended information: Refers to information arranged in the page for display for a certain purpose, such as product recommendation information, advertising information, prompt information, etc.
[0039] 4. Ad Slot ID: The ID used by the publisher to manage ad displays on their management interface. For example, the ID used by the publisher to manage ad displays on a mini program.
[0040] 5. Mini Program Base Library: Refers to the operating environment of the mini program, which is a JavaScript software development kit. The mini program interacts with the user's terminal device through the mini program base library. For example, the mini program base library can be regarded as an in-built component of an app installed on the terminal device.
[0041] 6. HTML (Hyper Text Markup Language) is a way of organizing information. By a series of tags, it unifies the formats of various elements, facilitating organization and display.
[0042] 7. Node Tree: A tree structure generated based on the content nodes of a page. Usually, it is a tree structure composed of nodes with a certain hierarchy and association relationship. For example, the elements on a page form a tree structure with a certain hierarchy and association relationship.
[0043] 8. DOM (Document Object Model, hereinafter referred to as the real DOM in this article for better distinction from the virtual DOM below) is a standard interface specification designated by the W3C and is the standard API for processing HTML. The real DOM provides an access model for the entire document. It can represent the document as a tree structure including multiple levels of nodes (the node tree of the real DOM), and this tree structure can indicate the association relationships of various elements within the HTML page.
[0044] 9. Virtual DOM (Virtual DOM) is a structure formed by abstracting the node tree of the real DOM into a data object. The nodes (VNodes) in the node tree of the virtual DOM can be mapped to the nodes in the node tree of the real DOM through mapping operations. The virtual DOM itself will not be rendered and displayed, but it can be used to conveniently modify the real DOM without having to update the node tree of the real DOM every time a modification is made. For example, Vue.js 2.0 introduced the virtual DOM function.
[0045] 10. HTML Document Flow (abbreviation: Document Flow, Normal Flow): The document flow refers to the arrangement rules of elements in HTML during the calculation of layout and typesetting. For example, elements in the document flow are automatically arranged from left to right (for non-block-level elements) or from top to bottom (for block-level elements) in a certain pattern.
[0046] 11. Poisson Distribution: A probability distribution in statistics and probability theory, published by the French mathematician Siméon Denis Poisson in 1838. The Poisson distribution is suitable for describing the probability distribution of the number of random events occurring within a unit of time. The probability mass function of the Poisson distribution is:
[0047]
[0048] 12. Directly Associated Nodes: In this application, "directly associated nodes" refer to the direct "ancestor" nodes or direct "descendant" nodes of a node in the node tree. For example, the following nodes of a node are directly associated with each other: the father node, the father's father node, the father's grandfather node, the father's great-grandfather node, the child node, the child's child node, the child's grandchild node, the child's great-grandchild node, etc.
[0049] 13. Page: A form of information organization and presentation, such as a Web page, a web page, an HTML page, a mini-program page, and other application program pages, etc.
[0050] Figure 1 FIG. shows a schematic diagram of an application scenario 100 of some embodiments of the present invention. This scenario may include one or more user interfaces 110, a network 130, and one or more computing devices 140. The user 120 interacts with one or more user interfaces 110, and then completes two-way communication with the computing device 140. The computing device 140 may be a single server or a server group, or may also be other devices with certain computing and communication capabilities. The computing device 140 may be provided and maintained by the service provider 160. The computing device 140 may provide a certain creation platform for the traffic owner 150 to create, operate, and edit. For example, the traffic owner 150 may apply for an account to create and publish the results on the computing device 140. In some cases, the advertiser 170 provides the service provider 160 with the need to publish recommended information, and then the service provider 160 may choose to publish the recommended information on the computing device 140. Specifically, both the service provider 160 and the traffic owner 150 may negotiate to publish the recommended information on a specific page created and operated by the traffic owner 150. The service provider 160 can analyze the publication situation of the recommended information by analyzing the data of the computing device 140.
[0051] In some embodiments, network 130 may include a combination of a local area network (LAN), a wide area network (WAN), a personal area network (PAN), and / or a communication network such as the Internet. In such a case, computing device 140 may act as a server, and user interface 110 may interact with one or more computing devices 140 via the network, for example, by sending data to or receiving data from them. Each of computing device 140 and one or more user interfaces 110 may include at least one communication interface (not shown) capable of communicating via network 130. Such a communication interface may be one or more of the following: any type of network interface (e.g., network interface card (NIC)), wired or wireless (such as IEEE 802.11 wireless LAN (WLAN)) wireless interface, Worldwide Interoperability for Microwave Access (WiMAX) interface, Ethernet interface, Universal Serial Bus (USB) interface, cellular network interface, BluetoothTM interface, Near Field Communication (NFC) interface, etc. Additional examples of communication interfaces are described elsewhere herein.
[0052] In some embodiments, user interface 110 may be integrated into one or more terminal devices (not shown). One or more terminal devices may be any type of computing-enabled device, including mobile computers (e.g., devices, personal digital assistants (PDAs), laptop computers, notebook computers, tablet computers such as the Apple iPad TM etc.), mobile phones (e.g., cellular phones, smartphones such as the Microsoft Phone, Apple iPhone, phones implementing Android TM operating system, devices, devices, etc.), wearable devices (e.g., smartwatches, head-mounted devices, including smart glasses such as Glass TM etc.) or other types of mobile devices. In some embodiments, one or more terminal devices may also be stationary devices, such as desktop computers, gaming consoles, smart TVs, etc. Additionally, when there are multiple terminal devices, the multiple terminal devices may be the same or different types of devices.
[0053] The terminal device may include a user interface 110 and a terminal application (not shown) that can interact with the user via the user interface. The terminal application may be a native application, a web application, or a mini program (LiteApp, such as a mobile mini program or a WeChat mini program) as a lightweight application. In the case where the terminal application is a native application that needs to be installed, the terminal application can be installed in the terminal device. In the case where the terminal application is a web application, the terminal application can be accessed through a browser. In the case where the terminal application is a mini program, the terminal application can be directly opened on the user terminal by searching for relevant information of the terminal application (such as the name of the terminal application), scanning the graphic code of the terminal application (such as a barcode, a QR code, etc.), etc., without installing the terminal application.
[0054] Figures 2a - 2b Schematically shows corresponding to Figure 1 a schematic diagram of the user interface of the user interface 110 in. In recent years, due to the rise of many Internet technologies such as mini programs, self-media has been widely developed, and thus a large number of traffic owners have emerged. The traffic owner can profit by publishing the recommended information of the advertiser on the page operated and managed by it. As Figure 2a shown, the user interface 2100 may include a content component 2115 and a recommended information component 2110 published by the traffic owner in the mini program, such as a banner recommended information. The inventors of the present application have noticed that in some cases, for the traffic owner, for various purposes, the information in the page may be packaged to a certain extent to induce the visitors of the page to click or access. For example, for the benefit of the recommended information, the traffic owner may block the recommended information to induce the mini program user to click on the recommended information, resulting in invalid exposure of the recommended information. As Figure 2b shown, the user interface 2200 may include a content component 2215 and a recommended information component 2210 published by the traffic owner in the mini program. Since the traffic owner also has a certain editing ability for the page, some traffic owners may place the interactive modules 2220, 2225 that are easy for users to click at least partially overlapping with the recommended information component 2210, thus inducing the user to misclick on the recommended information component 2210. This seriously damages the user experience, causes waste of computing resources and bandwidth resources, and damages the interests of advertisers, service providers, and users.
[0055] In the case where the recommended information is an advertisement, taking a mini-program as an example to illustrate the process of displaying the banner advertisement of the traffic owner. First, the traffic owner uses a terminal device to apply for the mini-program banner advertisement slot ID (adunit-id) and submits it for review. After the application for the advertisement slot ID is approved, the traffic owner obtains the advertisement slot ID and uses the advertisement slot ID to create a mini-program banner advertisement slot and go live to the live network. A user of the live network uses a terminal device to open the page operated by the traffic owner and uses the mini-program basic library to determine whether the current traffic owner has created a mini-program banner advertisement component. If a mini-program banner advertisement component has been created, the advertisement slot ID of the mini-program banner advertisement component created by the traffic owner is used to request advertisement data. The background server determines whether the requested advertisement slot ID is the same as the one created by the traffic owner in the advertisement management interface and is the advertisement slot ID after passing the review. If the advertisement slot ID meets all the judgment conditions, the advertisement data is normally returned. After the advertisement data is returned, the terminal device uses the mini-program basic library to render and display the mini-program banner advertisement. In some embodiments, when the advertisement is displayed, the terminal device can perform mini-program banner advertisement occlusion detection, that is, recommended information occlusion detection.
[0056] Figure 3 Schematically shows a flowchart of a method 300 for determining occlusion of recommended information in a page according to some embodiments of the present disclosure. Figure 4a Schematically shows a structural diagram of a node tree 400 according to some embodiments of the present disclosure, Figure 4b Schematically shows a schematic diagram of a node tree 4200 of a real DOM according to the present disclosure, Figure 4c Schematically shows a working principle diagram of a virtual DOM according to some embodiments of the present disclosure, and Figure 4d Schematically shows a classification schematic diagram of nodes of a node tree of a virtual DOM according to some embodiments of the present disclosure. Figure 5 Schematically shows a schematic diagram of a document flow 500 according to some embodiments of the present invention.
[0057] As Figure 3 shown, the method 300 for determining occlusion of recommended information in a page according to some embodiments of the present disclosure includes the following steps S310-S340.
[0058] S310, obtain the recommended information in the page.
[0059] In some embodiments, taking the applet page on the terminal device as an example, the terminal device receives the code text of the page content (the code with recommendation information) from the server, parses the code text using the applet basic library, and finally renders and displays the page content on the applet of the terminal device. In this case, the terminal device can use the applet basic library to extract the nodes of the recommendation information in the page content. For example, the recommendation information component may already be marked in the applet basic library or the developer can additionally mark the recommendation information component.
[0060] S320, select some nodes from at least two nodes in the node tree of the page, where the at least two nodes are nodes other than the nodes of the recommendation information and the direct associated nodes of the nodes of the recommendation information, and the node tree is a tree structure generated based on the content nodes of the page.
[0061] As Figure 4a shown, the node tree is a tree structure generated based on the content nodes of the page. The node tree 400 includes nodes 410, 420, 422, 430, 432, 434, 436, 438, 439, 440, 444, 446, and 450. The node 410 can be regarded as the root node. The node 410 includes two child nodes 420 and 422. The node 420 includes three child nodes 430, 432, 434. The node 422 includes three child nodes 436, 438, 439. The node 432 includes the child node 440. The node 438 includes two child nodes 444, 446, and the node 444 includes the child node 450. The node tree 400 can be divided into five levels: the node 410 can be regarded as one level, the nodes 420 and 422 can be regarded as one level, the nodes 430, 432, 434, 436, 438, 439 can be regarded as one level, the nodes 440, 444, 446 can be regarded as one level, and the node 450 can be regarded as one level. The nodes within each level are sibling nodes to each other. The nodes in the upper level are the parent nodes of the nodes in the lower level: the node 410 is the parent node of the nodes 420 and 422, the node 420 is the parent node of the nodes 430, 432, 434, the node 422 is the parent node of the nodes 436, 438, 439, the node 432 is the parent node of the node 440, the node 438 is the parent node of the nodes 444, 446, and the node 444 is the parent node of the node 450. By way of example, the nodes 410, 420, 432, 440 are directly associated nodes with each other, and the nodes 410, 422, 438, 444, 450 are directly associated nodes with each other.
[0062] In some embodiments, nodes of recommended information can also be obtained in the node tree 400 of the page. Exemplarily, node 440 can be a node of recommended information. In some embodiments, selecting partial nodes from at least two nodes in the node tree of the page, where the at least two nodes are nodes other than the nodes of recommended information and the direct associated nodes of the nodes of recommended information can include: selecting partial nodes from at least two nodes 422, 430, 434, 436, 438, 439, 444, 446, and 450 in node tree 400, where the at least two nodes 422, 430, 434, 436, 438, 439, 444, 446, and 450 are nodes other than the node 440 of recommended information and the direct associated nodes 410, 420, 432 of the node 440 of recommended information.
[0063] In some embodiments, the above-mentioned selecting partial nodes from at least two nodes 422, 430, 434, 436, 438, 439, 444, 446, and 450 in node tree 400 can include randomly selecting partial nodes from at least two nodes 422, 430, 434, 436, 438, 439, 444, 446, and 450 in node tree 400. In some embodiments, the above-mentioned selecting partial nodes from at least two nodes 422, 430, 434, 436, 438, 439, 444, 446, and 450 in node tree 400 can also include non-randomly selecting partial nodes from at least two nodes 422, 430, 434, 436, 438, 439, 444, 446, and 450 in node tree 400: for example, setting different probability weights for the at least two nodes respectively based on the degree of relationship between the at least two nodes 422, 430, 434, 436, 438, 439, 444, 446, and 450 and the node 440 of recommended information (for example, whether they are sibling nodes of the direct associated nodes 410, 420, 432 of the node 440 of recommended information), and then selecting partial nodes; or for example, setting different probability weights for the at least two nodes respectively based on the different levels where the at least two nodes 422, 430, 434, 436, 438, 439, 444, 446, and 450 are located in the node tree, and then selecting partial nodes.
[0064] In some embodiments, rendering and displaying page content on the applet of the terminal device can include the following process: The terminal device creates a node tree of the real DOM and creates a style tree based on the received code text of the page content, creates a rendering tree based on the node tree of the real DOM and the style tree, creates a layout, and draws to present the page.
[0065] Figure 4bA schematic diagram schematically shows a node tree 4200 of a real DOM according to the present disclosure. The node tree includes various nodes, and nodes at different levels reflect the hierarchical relationship of page content display. Among them, the root element 4202 is the root node, the element 4210 is a child node of the root element 4202, the elements 4220, 4222, 4224, 4226 are child nodes of the element 4210, and the elements 4220, 4222, 4224, 4226 are sibling (same-level) nodes to each other. The element 4230 is a child node of the element 4220, the element 4232 is a child node of the element 4222, the element 4234 is a child node of the element 4224, and the element 4236 is a child node of the element 4226. The attribute 4250 is an attribute node of the element 4220, and the attribute 4252 is an attribute node of the element 4210. The root element 4202 is the parent node of the element 4210, the element 4210 is the parent node of the elements 4220, 4222, 4224, 4226, the element 4220 is the parent node of the element 4230, the element 4222 is the parent node of the element 4232, the element 4224 is the parent node of the element 4234, and the element 4226 is the parent node of the element 4236.
[0066] In some embodiments, Figure 4a the shown node tree may be the node tree of the real DOM of the page content, or Figure 4a the shown node tree may be based on the node tree of the real DOM of the page content.
[0067] In some embodiments, before selecting partial nodes from at least two nodes in the node tree of the page, where the at least two nodes are nodes other than the nodes of the recommended information and the direct associated nodes of the nodes of the recommended information, it further includes: obtaining the node tree of the page based on the virtual DOM of the page content. Specifically, the terminal device may represent various elements in the page as a node tree structure of the virtual DOM and analyze the nodes in the node tree structure of the virtual DOM. In some embodiments, for the convenience of operation and to reduce the computational amount, the terminal device may use the JavaScript language to create a virtual DOM in the memory of the terminal device. The virtual DOM uses JavaScript objects to represent VNodes and creates nodes in the memory to save information for mapping the real DOM. The virtual DOM can be regarded as an abstraction and mapping of the real DOM. Exemplarily, the working principle of the virtual DOM is as Figure 4cAs shown, when editing page content, the Diff algorithm is used to compare what updates there are between the new nodes (new Vnodes) 4024 and the old nodes (old Vnodes) 4022 in the virtual DOM 4020, and the Patch algorithm is used to map these updates in the virtual DOM 4020 to the real DOM 4030. In this way, multiple modifications can be frequently made in the virtual DOM, and finally the updates are mapped to the real DOM without frequently modifying the real DOM, which reduces the computational amount and improves the efficiency of update and rendering.
[0068] Figure 4d Schematically shown is a classification schematic diagram of nodes of a node tree of a virtual DOM according to some embodiments of the present disclosure. In some embodiments, the nodes Vnodes 4100 of the node tree of the virtual DOM may include text nodes (text Vnodes 4110), component nodes (component Vnodes 4120), element nodes (element Vnodes 4130), etc.
[0069] In some embodiments, Figure 4a the shown node tree may be the node tree of the virtual DOM of the page content, or Figure 4a the shown node tree may be based on the node tree of the virtual DOM of the page content. Based on the virtual DOM of the page, obtaining the node tree of the page can improve the efficiency of obtaining the node tree and reduce the amount of computation.
[0070] In some embodiments, the selected partial nodes may include nodes such as div modules, pictures, texts, etc.
[0071] S330, determine the position of the recommended information in the page and the position of the partial nodes in the page.
[0072] In some embodiments, the terminal device can extract the style information of the nodes from the parsed code text, and then determine the position of the recommended information in the page by analyzing the positioning and size of the recommended information in the page, and determine the position of the partial nodes in the page by analyzing the positioning and size of the partial nodes in the page.
[0073] In some embodiments, in the document flow, the selected partial nodes may correspond to block-level elements, inline elements, etc. The positioning of elements can adopt various methods, such as normal document flow, relative positioning, fixed positioning, absolute positioning, floating positioning, etc., and their positions can be determined according to the reference point, reference displacement, and the size of the element. As Figure 5As shown, in some embodiments, the document flow 500 shows the arrangement of the div element 530, the text element 540, and the picture element 550 in the page 510. The div element 530 is positioned at a certain distance from the upper boundary 520 and the left boundary 522 of the page. The text element 540 is positioned at a certain displacement relative to the div element 530. The picture element 550 is floatingly positioned at a certain distance from the upper boundary 520 and the right boundary 524. The positions of the div element 530, the text element 540, and the picture element 550 in the page 510 can be determined according to the reference point, the reference displacement, and the size of the element.
[0074] S340, in response to at least partial overlap between the position of the recommendation information in the page and the position of a part of the nodes in the page, determine that the recommendation information is blocked.
[0075] In some embodiments, the terminal device determines whether there is at least partial overlap between the recommendation information and a part of the nodes by comparing the position of the recommendation information in the page with the position of the part of the nodes in the page, and then, in response to at least partial overlap between the position of the recommendation information in the page and the position of the part of the nodes, determines that the recommendation information is blocked.
[0076] Exemplarily, if the picture element 550 includes recommendation information, then it can be determined whether there is at least partial overlap between the div element 530 and the picture element 550 or between the text element 540 and the picture element 550 according to the positions of the div element 530, the text element 540, and the picture element 550 in the page 510, and then it can be determined whether the picture element 550 is blocked.
[0077] In some embodiments, taking the total number of traffic master users as the overall data sample, among the sampled part of the nodes of its users, as long as one meets the cheating conditions, it can be judged that the traffic master is very likely to use the means of occlusion to cheat on recommendation information. In some embodiments, when the recommendation information is displayed on the page, if it is determined that there is at least partial overlap between the position of the recommendation information in the page and the position of a part of the nodes, it can be considered that there is a possibility of occlusion violation in the traffic master's release of the recommendation information, and then other measures such as manual review or suspension of the release of the recommendation information can be taken.
[0078] In some implementations, the following method is used to detect recommendation information occlusion for the cheating behavior of occluding recommendation information in the page: when there is recommendation information set in the page, traverse all the nodes of the document flow, and determine whether the current recommendation information is blocked by judging the position relationship between each node in all the nodes and the recommendation information. This solution requires traversing all the nodes in the document flow. When the document flow is large, the traversal process will consume a large amount of computing and bandwidth resources, damage the user access speed and efficiency, seriously affect the user experience, and cause waste of computing resources and bandwidth resources.
[0079] In an embodiment of the present invention, a simple and feasible method for preventing cheating of recommended information is also provided. By determining whether the positions of some nodes in the page coincide at least partially with the position of the recommended information in the page, it is automatically determined whether the recommended information is blocked by other elements in the page, without traversing all document nodes during the detection of recommended information occlusion. This improves the efficiency of the detection of recommended information occlusion, reduces the impact of the detection of recommended information occlusion on the user's browsing of the page, reduces the requirements for computer hardware resources and bandwidth, and improves the user experience. In addition, the direct associated nodes of the nodes excluding the recommended information are further excluded, further improving the efficiency and avoiding waste of computing resources and bandwidth.
[0080] In some embodiments, as Figure 4a shown, selecting some nodes from at least two nodes in the node tree of the page, where the at least two nodes are nodes other than the node of the recommended information and the direct associated nodes of the node of the recommended information includes: selecting some nodes from at least two nodes 422, 430, 434, 436, 438, 439, 444, 446 between the level of the node 440 of the recommended information in the node tree of the page and the level of the root node 410, and the at least two nodes 422, 430, 434, 436, 438, 439, 444, 446 are nodes other than the node 440 of the recommended information and the direct associated nodes 410, 420, 432 of the node 440 of the recommended information.
[0081] Since the positions of nodes with lower levels in the document flow are often determined by the positions of their directly associated nodes with higher levels in the document flow, by selecting some nodes from nodes with the same level as the node of the recommended information or higher levels than the node of the recommended information, the efficiency and accuracy of the method for determining occlusion of recommended information in the page are further improved.
[0082] In some embodiments, as Figure 4a shown, selecting some nodes from at least two nodes between the level of the node of the recommended information in the node tree of the page and the level of the root node, where the at least two nodes are nodes other than the node of the recommended information and the direct associated nodes of the node of the recommended information includes: obtaining N node levels from the level of the node 440 of the recommended information to the level of the root node 410 (in Figure 4a , N = 4); randomly selecting M node levels from the N node levels; and randomly selecting O nodes other than the node 440 of the recommended information and the direct associated nodes 410, 420, 432 of the node of the recommended information from each of the M node levels as some nodes, where N, M, and O are positive integers, and N ≥ M.
[0083] By selecting some nodes in layers, the accuracy of sampling is further improved, avoiding the selected part of the nodes being concentrated in the same layer. At the same time, the amount of computation is reduced, the computing efficiency is improved, and the efficiency and accuracy of the method for determining the occlusion of recommended information in the page are further improved.
[0084] In some embodiments, randomly selecting M node layers from N node layers includes: randomly selecting M node layers from N node layers based on an algorithm, where the probability P(M) of M satisfies the following formula:
[0085] P(M) = (λ^M)e^(-λ) / M!, where λ takes a positive value and e is the natural constant. That is, the distribution of M when randomly selecting M node layers from N node layers satisfies the Poisson distribution. This further improves the accuracy of the matching between the sampling of some nodes and the actual results, better conforms to the occurrence probability of element coincidence and occlusion in different node levels, and achieves a good balance between computational performance savings and result accuracy. The present invention generates random numbers through the Poisson distribution, obtains nodes in the document through the random numbers, makes random sampling reports, and simulates the node information of the overall document flow to judge. When the data volume is sufficient, it simulates obtaining all the current document flow nodes to judge whether the traffic master has an occlusion behavior.
[0086] In some embodiments, randomly selecting M node layers from N node layers further includes: setting λ to N / 3. This further improves the accuracy of the matching between the sampling of some nodes and the actual results, better conforms to the occurrence probability of element coincidence and occlusion in different node levels, and achieves a good balance between computational performance savings and result accuracy.
[0087] In some embodiments, randomly selecting M node layers from N node layers based on an algorithm includes: randomly selecting M node layers from N node layers based on an equal-probability algorithm. For example, each level in the N node layers has the same probability of being selected. In some embodiments, randomly selecting O nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information as partial nodes from each node layer in the M node layers includes: randomly selecting O nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information as partial nodes from each node layer in the M node layers based on an equal-probability algorithm. For example, the probability of selecting nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information in each node layer of the M node layers is the same. In some embodiments, the equal-probability algorithm may include the Fisher-Yates shuffle algorithm, etc. Using the equal-probability algorithm for sampling makes the probability of various samples being selected the same, further improves the accuracy of the matching between the sampling of some nodes and the actual results, better conforms to the occurrence probability of element coincidence and occlusion in different node levels, and achieves a good balance between computational performance savings and result accuracy.
[0088] In some embodiments, randomly selecting M node layers from N node layers includes randomly selecting M node layers from N node layers in response to M being less than or equal to N / 2. In some embodiments, in response to M being greater than N / 2, this detection is abandoned. This avoids excessive consumption of computing resources during the sampling process and affects the user's access experience.
[0089] In some embodiments, if, among all the nodes that can be selected in each individual node layer, the number of nodes is less than the number O that should be selected, it can be considered that all the nodes in this layer can be selected for calculation.
[0090] In some embodiments, as Figure 4a shown, selecting some nodes from at least two nodes between the level of the node of the recommended information in the node tree of the page and the level of the root node, where the at least two nodes are nodes other than the node of the recommended information and the direct associated nodes of the node of the recommended information includes: obtaining N node layers from the level of the node 440 of the recommended information to the level of the root node 410 (in Figure 4a , N = 4); randomly selecting M node layers from the N node layers; and randomly selecting M nodes other than the node 440 of the recommended information and the direct associated nodes 410, 420, 432 of the node of the recommended information from each of the M node layers as some nodes, where N and M are positive integers and N ≥ M. Such processing further simplifies the sampling process, achieves a good balance between computing performance savings and result accuracy, and avoids excessive consumption of computing resources during the sampling process and affects the user's access experience.
[0091] In some embodiments, randomly selecting M node layers from N node layers includes: randomly selecting M node layers from N node layers based on an algorithm, where the probability P(M) of M satisfies the following formula:
[0092] P(M) = (λ^M)e^(-λ) / M!, where λ takes a positive value and e is the natural constant. That is, the distribution of M when randomly selecting M node layers from N node layers satisfies the Poisson distribution. This further improves the accuracy of the matching between the sampling of some nodes and the actual results, better conforms to the occurrence probability of element coincidence and occlusion in different node levels, and achieves a good balance between computing performance savings and result accuracy. The present invention generates random numbers through the Poisson distribution, obtains nodes in the document through the random numbers, performs random sampling and reporting, and simulates the node information of the overall document flow to judge. When the data volume is sufficient, it simulates obtaining all the current document flow nodes to judge whether there is an occlusion behavior of the traffic master.
[0093] In some embodiments, randomly selecting M node layers from N node layers further includes: setting λ to N / 3. This further improves the accuracy of the matching between partial node sampling and actual results, better conforms to the occurrence probability of element overlap and occlusion in different node levels, and achieves a good balance between computational performance savings and result accuracy.
[0094] In some embodiments, randomly selecting M node layers from N node layers based on an algorithm includes: randomly selecting M node layers from N node layers based on an equal-probability algorithm. For example, each level in the N node layers has the same probability of being selected. In some embodiments, the equal-probability algorithm may include the Fisher-Yates shuffle algorithm, etc. Using the equal-probability algorithm for sampling makes the probability of various samples being selected the same, further improves the accuracy of the matching between partial node sampling and actual results, better conforms to the occurrence probability of element overlap and occlusion in different node levels, and achieves a good balance between computational performance savings and result accuracy.
[0095] In some embodiments, randomly selecting M node layers from N node layers includes randomly selecting M node layers from N node layers in response to M being less than or equal to N / 2. In some embodiments, in response to M being greater than N / 2, this detection is abandoned. This avoids excessive consumption of computing resources during the sampling process and affects the user's access experience.
[0096] In some embodiments, if in each individual node layer, the number of all selectable nodes is less than the number M to be selected, then it can be considered that all nodes in this layer can be selected for calculation.
[0097] Figure 6 Schematically shown is a schematic block diagram of a recommended information occlusion determination device 600 in a page according to some embodiments of the present invention. The recommended information occlusion determination device in the page includes: an acquisition module 601 configured to acquire recommended information in the page; a selection module 602 configured to select some nodes from at least two nodes in the node tree of the page, where the at least two nodes are nodes other than the nodes of the recommended information and the direct associated nodes of the nodes of the recommended information, and the node tree is a tree-like structure generated based on the content nodes of the page; a position determination module 603 configured to determine the position of the recommended information in the page and the position of some nodes in the page; and an occlusion determination module 604 configured to determine that the recommended information is occluded in response to at least partial overlap between the position of the recommended information in the page and the position of some nodes in the page. The recommended information occlusion determination device 600 in the page has a principle or advantage similar to that of the recommended information occlusion determination method in the page, which will not be elaborated here.
[0098] Figure 7FIG. 0 schematically shows a schematic block diagram of a computing system 700 capable of implementing a method for determining occlusion of recommended information in a page according to some embodiments of the present invention. In some embodiments, the computing system 700 represents Figure 1 a computing device 140 in the application scenario of
[0099] The computing system 700 may include various different types of devices, such as a computing device computer, a client device, a system-on-chip, and / or any other suitable computing system or computing system.
[0100] The computing system 700 may include at least one processor 702, a memory 704, (multiple) communication interfaces 706, a display device 708, other input / output (I / O) devices 710, and one or more mass storage devices 712 that can communicate with each other, such as via a system bus 77 or other appropriate means.
[0101] The processor 702 may be a single processing unit or multiple processing units, and all processing units may include a single or multiple computing units or multiple cores. The processor 702 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuits, and / or any device that manipulates signals based on operation instructions. Among other capabilities, the processor 702 may be configured to obtain and execute computer-readable instructions stored in the memory 704, the mass storage device 712, or other computer-readable media, such as program code of an operating system 716, program code of an application 718, program code of other programs 720, etc., to implement the method for determining occlusion of recommended information in a page provided by the embodiments of the present invention.
[0102] The memory 704 and the mass storage device 712 are examples of computer storage media for storing instructions that are executed by the processor 702 to implement the various functions described above. For example, the memory 704 generally may include both volatile memory and non-volatile memory (e.g., RAM, ROM, etc.). In addition, the mass storage device 712 generally may include a hard disk drive, a solid state drive, removable media, including external and removable drives, memory cards, flash memory, floppy disks, optical discs (e.g., CD, DVD), storage arrays, network-attached storage, storage area networks, etc. The memory 704 and the mass storage device 712 may both be collectively referred to as memory or computer storage media herein, and may be non-transitory media capable of storing computer-readable, processor-executable program instructions as computer program code that can be executed by the processor 702 as a specific machine configured to implement the operations and functions described in the examples herein.
[0103] Multiple program modules may be stored on the mass storage device 712. These programs include an operating system 716, one or more application programs 718, other programs 720, and program data 722, and they may be loaded into the memory 704 for execution. Examples of such application programs or program modules may include, for example, computer program logic (e.g., computer program code or instructions) for implementing the method for determining occlusion of recommended information in the pages provided herein. Moreover, these program modules may be distributed at different physical locations to implement corresponding functions. For example, the method described as being executed by the computing device 140 in Figure 1 may be completed by being distributed across multiple computing devices.
[0104] This application provides a computer-readable storage medium having computer-readable instructions stored thereon, and the computer-readable instructions, when executed, implement the method for determining occlusion of recommended information in the above-mentioned pages.
[0105] This application provides a computer program product or a computer program. The computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. The processor of the computing device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computing device executes the method for determining occlusion of recommended information provided in the above various alternative implementations.
[0106] Although illustrated as being stored in the memory 704 of the computing system 700 in Figure 7 , the modules 77, 718, 720, and 722 or portions thereof may be implemented using any form of computer-readable medium accessible by the computing system 700. As used herein, "computer-readable medium" includes at least two types of computer-readable media, namely computer storage media and communication media.
[0107] Computer storage media includes volatile and non-volatile, removable and non-removable media implemented by any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD), or other optical storage devices, magnetic cassettes, magnetic tapes, magnetic disk storage devices, or any other non-transmission medium that can be used to store information for access by a computing system.
[0108] In contrast, communication media may embody computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transmission mechanism. The computer storage media as defined herein does not include communication media.
[0109] The computing system 700 may also include one or more communication interfaces 706 for exchanging data with other devices, such as via a network, a direct connection, etc. The communication interface 706 can facilitate communication within a variety of network and protocol types, including wired networks (e.g., LAN, cable, etc.) and wireless networks (e.g., WLAN, cellular, satellite, etc.), the Internet, etc. The communication interface 706 can also provide communication with external storage devices (not shown) such as in storage arrays, network-attached storage, storage area networks, etc.
[0110] In some examples, a display device 708 may be included for displaying information and images. Other I / O devices 710 can be devices that receive various inputs from a user and provide various outputs to the user, and can include touch input devices, gesture input devices, cameras, keyboards, remote controls, mice, printers, audio input / output devices, etc.
[0111] In the description of this specification, the description of terms such as "one embodiment", "some embodiments", "example", "specific example", or "some examples", etc. means that the specific features, structures, materials, or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described can be combined in any one or more embodiments or examples in a suitable manner. In addition, without contradiction, those skilled in the art can combine and combine the different embodiments or examples described in this specification and the features of different embodiments or examples.
[0112] Any process or method description shown in the flowchart or described in other ways herein can be understood to represent a module, segment, or part of code including one or more executable instructions for implementing a customized logic function or process, and the scope of the preferred embodiments of the present invention includes additional implementations, where the functions can be executed in an order different from that shown or discussed (including in a substantially simultaneous manner according to the involved functions or in a reverse order), which should be understood by those skilled in the art to which the embodiments of the present invention pertain.
[0113] In addition, each functional unit in various embodiments of the present invention can be integrated into one processing module, or each unit can exist physically alone, or two or more units can be integrated into one module. The above integrated module can be implemented in the form of hardware or in the form of a software functional module. When the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.
[0114] By studying the drawings, the disclosure, and the appended claims, those skilled in the art will be able to understand and implement variations of the disclosed embodiments when practicing the claimed subject matter. In the claims, the word "comprising" does not exclude other elements or steps, and the indefinite article "a" or "an" does not exclude a plurality. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage.
Claims
1. A method for determining occlusion of recommended information in a page, characterized in that The method includes: Obtaining recommended information in a page; Obtaining N node layers from the layer of a node of the recommended information to the layer of the root node; Randomly selecting M node layers from the N node layers based on an algorithm, where the probability P(M) of M satisfies the following formula: P(M) = (λ^M)e^(-λ) / M!, where λ takes a positive value and e is the natural constant; and Randomly selecting O nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information from each of the M node layers as partial nodes, where N, M, and O are positive integers and N ≥ M; Determining the position of the recommended information in the page and the position of the partial nodes in the page; and Determining that the recommended information is occluded in response to at least partial coincidence between the position of the recommended information in the page and the position of the partial nodes in the page.
2. The method for determining the occlusion of recommended information in a page according to claim 1, wherein The randomly selecting M node layers from the N node layers further includes: Setting λ to N / 3.
3. The method for determining the occlusion of recommended information in a page according to claim 1, characterized in that, The randomly selecting M node layers from the N node layers based on an algorithm includes: Randomly selecting M node layers from the N node layers based on an equal probability algorithm.
4. The method for determining the occlusion of recommended information in a page according to claim 1, wherein The randomly selecting O nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information from each of the M node layers as partial nodes includes: Randomly selecting O nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information from each of the M node layers as partial nodes based on an equal probability algorithm.
5. The method for determining the occlusion of recommended information in a page according to claim 1, characterized in that, The randomly selecting M node layers from the N node layers includes: In response to M being less than or equal to N / 2, randomly selecting M node layers from the N node layers.
6. The method for determining the occlusion of recommended information in a page according to claim 1, characterized in that, Selecting partial nodes from at least two nodes between the layer of a node of the recommended information in the node tree of the page and the layer of the root node, where the at least two nodes are nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information includes: Obtaining N node layers from the layer of a node of the recommended information to the layer of the root node; Randomly selecting M node layers from the N node layers; and Randomly selecting M nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information from each of the M node layers as partial nodes, where N and M are positive integers and N ≥ M.
7. The method for determining the occlusion of recommended information in a page according to claim 6, wherein The randomly selecting M node layers from the N node layers includes: Randomly selecting M node layers from the N node layers based on an algorithm, where the probability of M satisfies the following formula: P(M) = (λ^M)e^(-λ) / M!, where λ takes a positive value and e is the natural constant.
8. The method for determining the occlusion of recommended information in a page according to claim 7, characterized in that, The randomly selecting M node layers from the N node layers further includes: Setting λ to N / 3.
9. The method for determining the occlusion of recommended information in a page according to claim 1, characterized in that, Before selecting partial nodes from at least two nodes in the node tree of the page, where the at least two nodes are nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information, further includes: Based on the virtual DOM of the page, obtain the node tree of the page.
10. A device for determining occlusion of recommended information in a page, the device comprising: An acquisition module configured to acquire recommended information in a page; A selection module configured to acquire N node layers from the layer of a node of the recommended information to the layer of the root node; Randomly select M node layers from the N node layers based on an algorithm, where the probability P(M) of M satisfies the following formula: P(M) = (λ^M)e^(-λ) / M!, where λ takes a positive value and e is the natural constant; and randomly select O nodes other than the nodes of the recommended information and the directly associated nodes of the nodes of the recommended information from each of the M node layers as partial nodes, where N, M, and O are positive integers and N≥M; A position determination module configured to determine the position of the recommended information in the page and the position of the partial nodes in the page; and An occlusion determination module configured to determine that the recommended information is occluded in response to at least partial coincidence between the position of the recommended information in the page and the position of the partial nodes in the page.
11. A computing device, comprising a memory and a processor, the memory being configured to store computer-executable instructions thereon, the computer-executable instructions, when executed on the processor, performing the method for determining occlusion of recommended information in a page according to any one of claims 1-9.
12. A computer-readable storage medium, having stored thereon computer-executable instructions, the computer-executable instructions, when executed on a processor, performing the method for determining occlusion of recommended information in a page according to any one of claims 1-9.
Citation Information
Patent Citations
Method of detecting user interface layout issues for web applications
US20210103515A1