Detailed Description
The present application will be described in further detail with reference to the following drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the relevant invention and not restrictive of the invention. It should be noted that, for convenience of description, only the portions related to the related invention are shown in the drawings.
It should be noted that, in the present application, the embodiments and features of the embodiments may be combined with each other without conflict. The present application will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
Fig. 1 shows anexemplary system architecture 100 to which embodiments of the information pushing method or information pushing apparatus of the present application may be applied.
As shown in fig. 1, thesystem architecture 100 may includeterminal devices 101, 102, 103, anetwork 104, and aserver 105. Thenetwork 104 serves as a medium for providing communication links between theterminal devices 101, 102, 103 and theserver 105.Network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
The user may use theterminal devices 101, 102, 103 to interact with theserver 105 via thenetwork 104 to receive or send messages or the like. Various communication client applications, such as social platform software, shopping applications, search applications, instant messaging tools, mailbox clients, etc., may be installed on theterminal devices 101, 102, 103.
Theterminal devices 101, 102, 103 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, e-book readers, MP3 players (Moving Picture Experts Group Audio Layer III, mpeg compression standard Audio Layer 3), MP4 players (Moving Picture Experts Group Audio Layer IV, mpeg compression standard Audio Layer 4), laptop portable computers, desktop computers, and the like.
Theserver 105 may be a server providing various services, such as a background push server providing support for information to be pushed displayed on theterminal devices 101, 102, 103. The background push server may analyze and perform other processing on the received data such as the identification of the target user, and feed back a processing result (e.g., at least one piece of information to be pushed) to the terminal device.
It should be noted that the information pushing method provided in the embodiment of the present application is generally executed by theserver 105, and accordingly, the information pushing apparatus is generally disposed in theserver 105.
It should be understood that the number of terminal devices, networks, and servers in fig. 1 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
With continued reference to FIG. 2, aflow 200 of one embodiment of an information push method according to the present application is shown. The information pushing method comprises the following steps:
step 201, at least two pieces of information to be pushed are obtained.
In this embodiment, an electronic device (for example, a server shown in fig. 1) on which the information push method operates obtains at least two pieces of information to be pushed from a local or other electronic device. Wherein, each information to be pushed in the at least two information to be pushed is provided with at least one label.
The information to be pushed is information to be pushed to the terminal equipment. The user holds the terminal device, and can receive the information to be pushed. The information to be pushed here may be various information such as news, advertisements (which may be information stream advertisements), and the like. The label can be used to characterize the category to which the information to be pushed belongs and the characteristics of the information to be pushed belongs. For example, if the information to be pushed is an advertisement, the tag may be "cosmetics", "laptop", or the like.
In some optional implementation manners of this embodiment, each to-be-pushed information of the at least two to-be-pushed information carries the same information identifier.
In this embodiment, the information identifier is an identifier used to distinguish between the information to be pushed. If the information to be pushed represents an advertisement of a product, the information identifier may represent a brand of the product, a name of the product, or the like. Each of the two pieces of information to be pushed may be an advertisement for a different product. If the information to be pushed is news, the information identifier here may be a keyword of the news, a topic of the news, and the like.
Step 202, at least one label carried by the identity of the target user is obtained, and a weight value of each label in the at least one label carried by the identity is obtained.
In this embodiment, the electronic device obtains at least one tag carried by an identity of a target user. And then, the electronic equipment acquires the weight value of each label in at least one label carried by the identity label. The target user is a user determined by the machine according to a preset sequence or randomly. The identity is an identifier representing the identity of a user, and the user can be distinguished by the identifier. For example, a label carried by the id of user a is "cosmetics", and the weight value is 0.6. The weight value of the label is used for representing the importance degree of the label to the target user.
Step 203, for each to-be-pushed information of the at least two to-be-pushed information, in response to determining that at least one identical target label exists between the label carried by the identity identifier and the label carried by the to-be-pushed information, determining a weighted value of the at least one target label according to a weighted value of each target label of the at least one target label.
In this embodiment, for each piece of information to be pushed in the at least two pieces of information to be pushed, the electronic device determines whether at least one identical tag exists in the tag carried by the identity and the tag carried by the piece of information to be pushed. If it is determined to exist, then each tag of the same at least one tag is taken as a target tag, and in response: and determining a weighted value obtained by weighting each target label in the at least one target label according to the weighted value of each target label in the at least one target label. Here, the weight value is acquired instep 202.
The weighted values can be calculated in a number of ways. For example, the weighted values of the respective target tags may be added, and the added result may be used as the weighted value. Or a preset numerical value of each target label can be obtained, and the numerical value of each target label is multiplied by the weight value to obtain a product corresponding to each target label. And then taking the information to be pushed with the target label as a unit, and adding products corresponding to each target label of the information to be pushed with the target label to obtain a weighted value.
Step 204, in response to determining that the weighted value reaches a preset weighted value threshold of at least one to-be-pushed information of the at least two to-be-pushed information, pushing the at least one to-be-pushed information to the terminal device held by the target user.
In this embodiment, for each determined weighting value, the electronic device determines whether the weighting value reaches a preset weighting value threshold of at least one of the at least two pieces of information to be pushed. If the information to be pushed is determined to be reached, the target user is indicated to meet the pushing requirement of at least one piece of information to be pushed, and then response is made: and pushing the at least one piece of information to be pushed to a terminal device held by the target user. The preset weighted value threshold is a preset threshold which limits the numerical upper limit of the weighted value.
With continuing reference to fig. 3, fig. 3 is a schematic diagram of an application scenario of the information push method according to the embodiment. In the application scenario of fig. 3, thepush server 301 may obtain 5 pieces of information to be pushed 302 in the background, where each piece of information to be pushed has at least one tag; then, the push server obtains thelabel 303 "cosmetics" and "notebook computer" carried by the id of the user a, and obtains that theweight value 304 of "cosmetics" is 0.6 and theweight value 304 of "notebook computer" is 0.8. Then, for each piece of information to be pushed, in response to determining that the tag of the user a and the tag of the information to be pushed both carry the target tag "cosmetics" and the target tag "laptop", the push server determines that the weighted value is 1.4 according to the weighted value of 0.6 for the target tag "cosmetics" and the weighted value of 0.8 for the target tag "laptop". Finally, it is determined that the weighted value 1.4 reaches a preset weighted value threshold 1.3 of the information X to be pushed in the at least two pieces of information to be pushed and reaches a preset weighted value threshold 1.2 of the information Y to be pushed in the at least two pieces of information to be pushed, and at least one piece ofinformation 306 to be pushed, that is, the information X to be pushed and the information Y to be pushed, is pushed to theterminal device 307 of the target user.
According to the method provided by the embodiment of the application, the targeted information push is realized through the weight value of the label carried by the identity label of the target user.
With further reference to fig. 4, aflow 400 of yet another embodiment of an information push method is shown. Theprocess 400 of the information push method includes the following steps:
step 401, obtaining user behavior information and user attribute information of a target user.
In this embodiment, the server may obtain the user behavior information and the user attribute information of the target user from a local or other electronic device. For example, the user behavior information may be names of shops located in a certain geographical location that the user has arrived within a period of time, or search terms that the user has searched within a period of time. The user behavior information may be information generated for behaviors made by the user. The user attribute information may be information of the nature of the user itself. Such as gender, age, geographic location where the user resides, and the like.
Step 402, adding at least one label to the identity of the target user based on the user behavior information and the user attribute information, and determining a weight value of each label in the at least one label.
In this embodiment, the server adds at least one tag to the identity of the target user based on the obtained user behavior information and user attribute information. A weight value is then determined for each of the at least one label. The tagging may be performed based on a tag determination method set in advance.
Specifically, it may be obtained that a label is set in advance for a product purchased by the user, a merchant visited by the user, and the like in the user behavior information. And then setting different label weights for different times intervals of user purchase times, user visit times for merchants and the like. And the server can set various labels for the user according to the age of the user, the sex of the user, the occupation of the user and the like in the user attribute information. Different weights for the user tags are then set for the age of the user's different numerical intervals, the gender of the user, the working age of the user, and so on.
For example, if the user behavior information includes cosmetics purchased by the user via the internet, the user may be tagged with the label "cosmetics". If the user purchases cosmetics multiple times, the label may be given a higher weight value, such as 0.8. The user attribute information includes the age of the user, and the user's age is 12 years old, and the label "young" may be added to the user. The weight value of the label "young" of the user may be determined according to the age group of the user, such as 0.7.
In some optional implementations of this embodiment, the server summarizes at least one tag to generate a user representation of the target user. A user representation is a tagged user model that is abstracted based on information such as user attribute information, lifestyle habits, and consumption behaviors. Various tags may be associated with the identity of the target user to obtain a user representation of the target user.
Step 403, for each to-be-pushed information of the at least two to-be-pushed information, in response to determining that at least one identical target tag exists in the tag carried by the identity and the tag carried by the to-be-pushed information, determining a weighted value of the at least one target tag according to a weighted value of each target tag in the at least one target tag.
In this embodiment, for each piece of information to be pushed in the at least two pieces of information to be pushed, the electronic device determines whether at least one identical tag exists in the tag carried by the identity and the tag carried by the piece of information to be pushed. If it is determined to exist, then each tag of the same at least one tag is taken as a target tag, and in response: and determining a weighted value obtained by weighting each target label in the at least one target label according to the weighted value of each target label in the at least one target label. Here, the weight value is obtained instep 402.
In practice, the calculation of the weighting values may take a number of forms. For example, the weighted values of the respective target tags may be added, and the added result may be used as the weighted value. Or a preset numerical value of each target label can be obtained, and the numerical value of each target label is multiplied by the weight value to obtain a product of each target label. And then taking the information to be pushed with the target label as a unit, and adding products of all target labels of the information to be pushed with the target label to obtain a weighted value.
Step 404, in response to determining that the weight value reaches a preset weight value threshold of at least one of the at least two pieces of information to be pushed, determining a pushing sequence of each piece of information to be pushed in the at least one piece of information to be pushed.
In this embodiment, if the server determines that the weighted value reaches the preset weighted value threshold of at least one to-be-pushed information of the at least two to-be-pushed information, the server responds: determining a pushing sequence of each piece of information to be pushed in the at least one piece of information to be pushed. The weighted value can reach a weighted value threshold of at least one of the at least two pieces of information to be pushed. And then, determining the pushing sequence of at least one piece of information to be pushed corresponding to each achieved weighted value threshold. The push order may be a specified push order obtained from a local or other electronic device, a randomly generated push order, or the like.
Step 405, pushing at least one piece of information to be pushed to the terminal device according to the pushing sequence.
In this embodiment, the server pushes the at least one piece of information to be pushed to a terminal device held by a target user according to the determined pushing order. That is, the target user meets the pushing requirement of the at least one piece of information to be pushed, and can push the information to the terminal device of the target user.
According to the embodiment, the label is added to the target user based on the user behavior information and the user attribute information, so that the label of the target user can be accurate and diversified.
With further reference to fig. 5, aflow 500 of yet another embodiment of an information push method is shown. Theprocess 500 of the information push method includes the following steps:
step 501, at least two pieces of information to be pushed are obtained.
In this embodiment, an electronic device (for example, a server shown in fig. 1) on which the information push method operates obtains at least two pieces of information to be pushed from a local or other electronic device. Each piece of information to be pushed in the at least two pieces of information to be pushed is provided with at least one label.
The information to be pushed is information to be pushed to the terminal equipment. The user holds the terminal device, and can receive the information to be pushed. The information to be pushed here may be various information such as news, advertisements (such as information flow advertisement), etc. The label can be used for representing the category to which the information to be pushed belongs and the characteristics of the information to be pushed belongs. For example, if the information to be pushed is an advertisement, the tag may be "cosmetics", "laptop", or the like.
In some optional implementation manners of this embodiment, each to-be-pushed information of the at least two to-be-pushed information carries the same information identifier.
In this embodiment, the information identifier is an identifier used to distinguish between the information to be pushed. If the information to be pushed represents an advertisement of a product, the information identifier here may represent a brand of the product, a name of a series of products, and so on. Each of the two pieces of information to be pushed may be an advertisement for a different product. If the information to be pushed is news, the information identifier here may be a keyword of the news, a topic of the news, or the like.
Step 502, at least one tag carried by the identity of the target user is obtained, and a weight value of each tag in the at least one tag carried by the identity is obtained.
In this embodiment, the electronic device obtains at least one tag carried by an identifier of a target user. And then, the electronic equipment acquires the weight value of each label in at least one label carried by the identity label. The target user is a user determined by the machine according to a preset sequence or at random. The identity label is a label representing the identity of a user, and can be used for distinguishing each user through the label. For example, a label carried by the id of user a is "cosmetics", and the weight value is 0.6. The weight value of the label is used for representing the importance degree of the label to the target user.
Step 503, for each piece of information to be pushed in the at least two pieces of information to be pushed, in response to determining that the same at least one target label exists in the label carried by the identity identifier and the label carried by the piece of information to be pushed, determining a weighted value of the at least one target label according to a weighted value of each target label in the at least one target label.
In this embodiment, for each piece of information to be pushed in the at least two pieces of information to be pushed, the electronic device determines whether at least one identical tag exists in the tag carried by the identity and the tag carried by the piece of information to be pushed. If it is determined to exist, then each tag of the same at least one tag is taken as a target tag, and in response: and determining a weighted value obtained by weighting each target label in the at least one target label according to the weighted value of each target label in the at least one target label. Here, the weight value is obtained instep 502.
The weighted values can be calculated in a number of ways. For example, the weighted values of the respective target tags may be added, and the added result may be used as the weighted value. Or a preset numerical value of each target label can be obtained, and the numerical value of each target label is multiplied by the weight value to obtain a product of each target label. And then taking the information to be pushed with the target label as a unit, and adding products of all target labels of the information to be pushed with the target label to obtain a weighted value.
Step 504, in response to determining that the weighted value reaches a preset weighted value threshold of at least one of the at least two pieces of information to be pushed, sorting the first information to be pushed in the at least one piece of information to be pushed and each piece of information in the predetermined first target information group, generating a first information sorted list, and recording the sorting of the first information to be pushed in the information sorted list.
In this embodiment, if the server determines that the weighted value reaches a preset weighted value threshold of at least one to-be-pushed information of the at least two to-be-pushed information, the first to-be-pushed information of the to-be-pushed information and each predetermined information of the first target information group are sorted, so as to obtain a first information sorted list including the first to-be-pushed information and the first target information group. The first information ordered list is a list including the first information to be pushed and the ordering of each information in the first target information group. In the first information sorted list, the total number of information is a specified number. That is, in the first information sorted list, the number of the information to be pushed and the information in the first target information group is the specified number. For example, the specified number may be 10. The first information to be pushed may be one or several pieces of information to be pushed specified in the at least one piece of information to be pushed. The first target information group includes at least two pieces of target information, and the target information may be information to be pushed by the server to the terminal device of the target user, such as news or dynamic information of a friend. After the first information ranking list is obtained, the server records the position of the first information to be pushed in the ranking list, that is, records the ranking of the first information to be pushed. For example, the recorded ordering is that the first information to be pushed is ranked at the 8 th bit.
And 505, pushing the information in the first information ordered list to the terminal device, so that the terminal device displays the information in the first information ordered list according to the arrangement order of the information in the first information ordered list.
In this embodiment, the server pushes the information in the first information ordered list to the terminal device, so that the terminal device receives the information in the first information ordered list and receives the order of the information in the list, and the information in the first information ordered list can be displayed according to the order of the information in the first information ordered list.
Step 506, according to the recorded ordering of the first information in the information ordered list and the preset information interval between pushing the first information to be pushed and pushing the second information to be pushed in the at least one information to be pushed, ordering the second information to be pushed and each information of a predetermined second target information group, and generating a second information ordered list.
In this embodiment, after pushing the information in the first information list, the server sorts the second information to be pushed and each information in the predetermined second target information group according to the sorting of the recorded first information in the information sorting list and the preset information interval between the first information to be pushed and the second information to be pushed, so as to generate a second information sorting category. The second information to be pushed is specified information in the at least one information to be pushed. The second information to be pushed may be one or several pieces of information to be pushed, which is specified in the at least one piece of information to be pushed, except the first information to be pushed. The second object information group includes at least two pieces of object information. Here, the object information in the second object information group does not coincide with the object information in the first object information group. The second information ordered list is a list including the second information to be pushed and the ordering order of each information in the second target information group.
The information interval is the information quantity between the first information to be pushed and the second information to be pushed. For example, if the information interval is 6, 6 pieces of information are separated between the first information to be pushed and the second information to be pushed. If the first information to be pushed is arranged at the 5 th bit in the first information list, the second information to be pushed is arranged at the 2 nd bit in the second information list, which is calculated according to the information interval of 6.
Step 507, recording the sorting of the second information to be pushed in the second information sorting list, wherein the sum of the quantity of the second information to be pushed and the quantity of the information in the second target information group is a specified quantity.
In this embodiment, the server locally records a position of the second information to be pushed in the second information list, that is, records a rank of the second information to be pushed in the second information ranking list. The sum of the quantity of the second information to be pushed and the quantity of the information in the second target information group is a specified quantity.
And step 508, pushing the information in the second information ordered list to the terminal device, so that the terminal device displays the information in the second information ordered list according to the arrangement order of the information in the second information ordered list.
In this embodiment, the server pushes the information in the second information ranking list to the terminal device held by the target user, so that the server can push the information in the list as well as the ranking order among the information. The terminal equipment can display the information in the second information sorting list according to the sorting order.
It should be noted thatstep 507 is executed to continue to push the information to be pushed, and if the information to be pushed in the at least one piece of information to be pushed is already pushed,step 507 may be omitted.
The embodiment can realize the control of the pushing density and the pushing frequency of the information to be pushed through the information interval.
With further reference to fig. 6, as an implementation of the method shown in the above-mentioned figures, the present application provides an embodiment of an information pushing apparatus, where the embodiment of the apparatus corresponds to the embodiment of the method shown in fig. 2, and the apparatus may be specifically applied to various electronic devices.
As shown in fig. 6, theinformation pushing apparatus 600 of the present embodiment includes: anacquisition unit 601, atag acquisition unit 602, a weightvalue determination unit 603, and apush unit 604. An obtainingunit 601, configured to obtain at least two pieces of information to be pushed, where each piece of information to be pushed of the at least two pieces of information to be pushed has at least one tag; atag obtaining unit 602, configured to obtain at least one tag carried by an identity of a target user, and obtain a weight value of each tag in the at least one tag carried by the identity; a weightedvalue determining unit 603 configured to, for each to-be-pushed information of the at least two to-be-pushed information, determine, in response to determining that at least one identical target tag exists between a tag carried by the identity identifier and a tag carried by the to-be-pushed information, a weighted value of the at least one target tag according to a weighted value of each target tag of the at least one target tag; the pushingunit 604 is configured to, in response to determining that the weighting value reaches a preset weighting value threshold of at least one of the at least two pieces of information to be pushed, push the at least one piece of information to be pushed to the terminal device held by the target user.
In some optional implementations of this embodiment, the obtainingunit 601 obtains at least two pieces of information to be pushed from a local or other electronic device. Wherein, each information to be pushed in the at least two information to be pushed is provided with at least one label.
In some optional implementations of this embodiment, thetag obtaining unit 602 obtains at least one tag carried by the identity of the target user. Then, thetag obtaining unit 602 obtains a weight value of each tag in at least one tag carried by the identity. The target user is a user determined by the machine according to a preset sequence or at random. The identity is an identifier representing the identity of a user, and the user can be distinguished by the identifier.
In some optional implementations of this embodiment, for each to-be-pushed information of the at least two pieces of to-be-pushed information, the weightingvalue determining unit 603 determines whether at least one identical tag exists in the tag carried by the identity and the tag carried by the to-be-pushed information. If it is determined to exist, then each tag of the same at least one tag is taken as a target tag, and in response: and determining a weighted value obtained by weighting each target label in the at least one target label according to the weighted value of each target label in the at least one target label.
In some optional implementations of the present embodiment, for each determined weighting value, the pushingunit 604 determines whether the weighting value reaches a preset weighting value threshold of at least one of the at least two pieces of information to be pushed. If the information to be pushed meets the pushing requirement of the target user, responding: and pushing the at least one piece of information to be pushed to a terminal device held by the target user.
In some optional implementation manners of this embodiment, each to-be-pushed information of the at least two to-be-pushed information carries the same information identifier.
In some optional implementations of this embodiment, the pushing unit includes: the determining module is configured to determine a pushing sequence of each piece of information to be pushed in the at least one piece of information to be pushed; and the pushing module is configured to push at least one piece of information to be pushed to the terminal equipment according to a pushing sequence.
In some optional implementations of this embodiment, the pushing unit includes: the generating module is configured to sort a first information to be pushed in the at least one information to be pushed and each information of a predetermined first target information group, generate a first information sorting list, and record the sorting of the first information to be pushed in the information sorting list, wherein the number of the information in the first information sorting list is a specified number; and the first information pushing module is configured to push the information in the first information ordered list to the terminal device, so that the terminal device displays the information in the first information ordered list according to the arrangement sequence of the information in the first information ordered list.
In some optional implementations of this embodiment, the apparatus further includes: the sorting unit is configured to sort the second information to be pushed and each information of a predetermined second target information group according to the sorting of the recorded first information in the information sorting list and the information interval between the preset first information to be pushed and the preset second information to be pushed in the at least one information to be pushed, so as to generate a second information sorting list; the recording unit is configured to record the sorting of the second information to be pushed in the second information sorting list, wherein the sum of the quantity of the second information to be pushed and the quantity of the information in the second target information group is a specified quantity; and the second information pushing unit is configured to push the information in the second information ordered list to the terminal device, so that the terminal device displays the information in the second information ordered list according to the arrangement order of the information in the second information ordered list.
In some optional implementations of this embodiment, the apparatus further includes: the acquisition unit is configured to acquire user behavior information and user attribute information of a target user; and the adding unit is configured to add at least one label to the identity of the target user based on the user behavior information and the user attribute information, and determine a weight value of each label in the at least one label.
Fig. 7 shows a schematic structural diagram of a computer device suitable for implementing the terminal device of the embodiment of the present application. As shown in fig. 7, thecomputer apparatus 700 includes a Central Processing Unit (CPU)701, which can perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)702 or a program loaded from astorage section 708 into a Random Access Memory (RAM) 703. In theRAM 703, various programs and data necessary for the operation of theapparatus 700 are also stored. TheCPU 701, theROM 702, and theRAM 703 are connected to each other via abus 704. An input/output (I/O)interface 705 is also connected tobus 704.
The following components are connected to the I/O interface 705: aninput portion 706 including a keyboard, a mouse, and the like; anoutput section 707 including components such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and a speaker; astorage section 708 including a hard disk and the like; and acommunication section 709 including a network interface card such as a LAN card, a modem, or the like. Thecommunication section 709 performs communication processing via a network such as the internet. Adrive 710 is also connected to the I/O interface 705 as needed. Aremovable medium 711 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on thedrive 710 as necessary, so that the computer program read out therefrom is mounted in thestorage section 708 as necessary.
In particular, according to embodiments of the application, the processes described above with reference to the flow diagrams may be implemented as computer software programs. For example, embodiments of the present application include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through thecommunication section 709, and/or installed from theremovable medium 711. The computer program performs the above-described functions defined in the method of the present application when executed by the Central Processing Unit (CPU) 701. Note that the computer readable medium of the present application can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor device, apparatus, or a combination of any of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution apparatus, device, or apparatus. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution apparatus, device, or apparatus. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based devices that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software or hardware. The described units may also be provided in the terminal device, and may be described as: a terminal device includes an acquisition unit, a tag acquisition unit, a weighting value determination unit, and a push unit. The names of the units do not in some cases form a limitation on the units themselves, and for example, the acquiring unit may also be described as a "unit acquiring at least two pieces of information to be pushed".
As another aspect, the present application also provides a computer-readable medium, which may be contained in the apparatus described in the above embodiments; or may be separate and not assembled into the device. The computer readable medium carries one or more programs which, when executed by the apparatus, cause the apparatus to: acquiring at least two pieces of information to be pushed, wherein each piece of information to be pushed of the at least two pieces of information to be pushed is provided with at least one label; acquiring at least one label carried by an identity of a target user, and acquiring a weight value of each label in the at least one label carried by the identity; for each piece of information to be pushed in the at least two pieces of information to be pushed, in response to determining that at least one identical target label exists in the label carried by the identity label and the label carried by the piece of information to be pushed, determining a weighted value of the at least one target label according to the weighted value of each target label in the at least one target label; and in response to the fact that the weighted value reaches a preset weighted value threshold value of at least one piece of information to be pushed in the at least two pieces of information to be pushed, pushing the at least one piece of information to be pushed to the terminal equipment held by the target user.
The foregoing description is only exemplary of the preferred embodiments of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the invention herein disclosed is not limited to the particular combination of features described above, but also encompasses other arrangements in which any combination of the features described above or their equivalents does not depart from the spirit of the invention disclosed above. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.