ES2783285T3 - Método y sistema de seguimiento web - Google Patents
Método y sistema de seguimiento web Download PDFInfo
- Publication number
- ES2783285T3 ES2783285T3 ES16166117T ES16166117T ES2783285T3 ES 2783285 T3 ES2783285 T3 ES 2783285T3 ES 16166117 T ES16166117 T ES 16166117T ES 16166117 T ES16166117 T ES 16166117T ES 2783285 T3 ES2783285 T3 ES 2783285T3
- Authority
- ES
- Spain
- Prior art keywords
- party
- web
- time
- load
- embedded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
- G06Q30/0202—Market predictions or forecasting for commercial activities
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
Landscapes
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- Economics (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Método para determinar si un navegador web (20) ha accedido a una página web (22) de terceros, comprendiendo el método: proporcionar una página web (26) de una primera parte por medio de un servidor web (12) de una primera parte, comprendiendo dicha página web (26) de la primera parte un elemento (28) de guion de instrucciones de carga, en donde el elemento (28) de guion de instrucciones de carga comprende código de guion de instrucciones para cargar un elemento (30) de guion de instrucciones de temporización en el navegador web (20) desde un servidor web (14) de una segunda parte; procesar la página web (26) de la primera parte con el navegador web (20), de tal manera que el elemento (30) de guion de instrucciones de temporización ordena al navegador web (20) que cargue un elemento embebido (34), el cual está embebido en la página web (22) de terceros, en el navegador web (20) una primera vez y que determine un primer tiempo de carga (t1) del elemento embebido (34), y el elemento (30) de guion de instrucciones de temporización ordena al navegador web (20) que cargue el elemento embebido (34) en el navegador web (20) una segunda vez y que determine un segundo tiempo de carga (t2) del elemento embebido (34), en donde el elemento (30) de guion de instrucciones de temporización solicita un URL para el elemento embebido (34) del servidor web (14) de la segunda parte o el URL se codifica en el elemento (30) de guion de instrucciones de temporización; decidir, sobre la base del primer tiempo de carga (t1) y del segundo tiempo de carga (t2), si el navegador web (20) ha cargado previamente la página web (22) de terceros; en donde, al navegador web (20) se le ordena cargar por lo menos una vez el elemento embebido (34) por medio de un URL alternativo que contiene una cadena de consulta aleatoria, antes de que se determinen el primer tiempo de carga (t1) y el segundo tiempo de carga (t2).
Description
DESCRIPCIÓN
Método y sistema de seguimiento web
Campo de la invención
La invención se refiere a un método, a un sistema, a un programa de ordenador, a un soporte legible por ordenador y a un elemento de guion de instrucciones (script) para determinar si un navegador web ha accedido a una página web de terceros.
Antecedentes de la invención
Por ejemplo, en relación con la publicidad, es beneficioso recopilar tanta información como sea posible sobre un usuario (o cliente) de un navegador web. Cuando una persona, y potencial cliente, navega por Internet, muchos servidores realizan un seguimiento de las páginas web y los enlaces que visita el cliente con el fin de recopilar información sobre los intereses de la persona. Una de las posibilidades para llevar a cabo esto consiste en integrar código Javascript © en una página web que, cuando es ejecutada por el navegador del usuario, informa a un servidor web de que el usuario ha visitado la página web. No obstante, este tipo de seguimiento solamente es posible cuando el propietario de la página web permite integrar el código de seguimiento Javascript en la página web.
La mayoría de los navegadores tienen una memoria caché en la cual se almacenan las páginas web visitadas previamente. No obstante, debido a restricciones de seguridad y a las normativas HTML que cumplen estas restricciones, a un servidor web no le resulta posible acceder a la memoria caché.
Otra de las posibilidades para realizar un seguimiento de un usuario es por medio de las denominadas cookies, que son pequeños objetos de datos almacenados en el navegador web del usuario. No obstante, a una cookie solamente puede acceder el servidor que ha generado la página web la cual ha generado la cookie. A un servidor web no le resulta posible acceder a las cookies de una página web de terceros.
Además, las cookies se pueden deshabilitar mediante una opción del navegador web. Para sortear esto, se han establecido otros métodos, tales como cookies Flash ©, en las que la información de usuario se almacena en otro sitio.
El documento WO 2015/070752 A1 se refiere a un sistema, en el cual se usa una imagen de logotipo, que puede estar embebida en una página web, para almacenar un identificador de un usuario.
El documento US 2011/197 136 A1 describe un método para crear un perfil de una instancia de un navegador web. Una página web en un servidor web comprende código de creación de perfiles, el cual, después de la carga de la página web en un navegador web, se ejecuta en el servidor web. Se describe que el tiempo de carga de una imagen se puede comparar con un umbral y, cuando el tiempo de carga es menor, puede considerarse que la imagen ya se cargó en la memoria caché.
El documento US 2008/114 875 A1 describe un sistema de monitorización de rendimiento para un navegador web que se puede materializar en forma de código Javascript embebido en una página web. Con el código Javascript, se pueden crear y memorizar sellos de tiempo de eventos y se puede determinar si el navegador web guarda en memoria caché una imagen, cuando la imagen se carga muy rápidamente.
El documento US 8266281 B1 se refiere a la recopilación de latencias y factores de medición de rendimiento del lado del cliente basándose en código de guion de instrucciones. Se menciona que, con el código de guion de instrucciones, se pueden recopilar temporizaciones de operaciones de reproducción.
El documento US 2002/077 836 A1 se refiere a la verificación de contratos de acuerdo de nivel de servicio, en la cual se comprueban parámetros de rendimiento garantizados sobre la base de código de guion de instrucciones. Se describe cómo se puede determinar un tiempo de respuesta en forma de una diferencia entre un tiempo de emisión y un tiempo en curso.
Descripción de la invención
Es un objetivo de la invención simplificar el seguimiento de usuarios.
Este objetivo se logra con la materia objeto de las reivindicaciones independientes. A partir de las reivindicaciones dependientes y de la siguiente descripción resultan evidentes otras realizaciones ejemplificativas.
Un primer aspecto de la invención se refiere a un método para determinar si un navegador web ha accedido a una página web de terceros. El método puede interpretarse como un método de seguimiento para realizar un seguimiento de un usuario del navegador web (y, en particular, de las actividades de este usuario).
Los navegadores web son programas de ordenador adaptados para procesar y visualizar páginas web, tales como
Internet Explorer ©, Firefox ©, Chrome ©, Safari ©, etcétera. Un navegador web puede acceder a una página web o página HTML o documento HTML a través de un URL (localizador uniforme de recursos) y/o los mismos pueden recuperarse del servidor web por medio del protocolo HTTP. Una página web se puede codificar en el lenguaje HTML.
En lo sucesivo, se mencionan servidores web de primeras partes, de segundas partes y de terceros. Un servidor web de una primera parte puede ser un primer servidor web, el cual proporciona una página web (de una primera parte) a la que accede un usuario del navegador web. El proveedor del servidor web de la primera parte es al que le interesa saber si el usuario también ha accedido a páginas web (de terceros) de otros proveedores.
A un servidor web de uno de estos otros proveedores se le denomina tercer servidor web (de terceros). Habitualmente, el proveedor del servidor web de la primera parte no tiene la posibilidad de incluir elementos de guion de instrucciones (u otras medidas) en las páginas web del proveedor de terceros para realizar un seguimiento de un usuario, cuando el usuario accede a estas páginas web. Por ejemplo, el proveedor del servidor web de la primera parte y el proveedor del servidor web de terceros pueden ser competidores.
En lo sucesivo se menciona, también, un segundo servidor web (de una segunda parte). El proveedor del servidor web de la segunda parte puede prestar soporte al proveedor del servidor web de la primera parte para llevar a cabo el método de seguimiento. El proveedor del servidor web de la primera parte puede ser un cliente del proveedor del servidor web de la segunda parte. Por ejemplo, el servidor web de la segunda parte puede proporcionar elementos de guion de instrucciones, que se usan durante el método de seguimiento. Debe entenderse que el servidor web de la primera parte también puede disponer de la funcionalidad del servidor web de la segunda parte, es decir, que el servidor web de la primera parte y el servidor web de la segunda parte sean iguales.
Según una realización de la invención, el método comprende: proporcionar una página web de una primera parte con un servidor web de una primera parte, comprendiendo o estando adaptada dicha página web de la primera parte para cargar un elemento de guion de instrucciones de temporización. En otras palabras, la página web de la primera parte (a la que accede el usuario con su navegador web) puede contener o integrar un elemento de guion de instrucciones de temporización (habitualmente en Javascript ©), que, cuando sea ejecutado por el navegador web, lleve a cabo la siguiente etapa del método. También puede resultar posible que la página web contenga otro elemento de guion de instrucciones que, cuando sea ejecutado por el navegador web, cargue e inicie el elemento de guion de instrucciones de temporización. Un elemento de guion de instrucciones puede estar codificado en una página web con una etiqueta <script>.
Además, el método comprende: procesar la página web de la primera parte con el navegador web, de tal manera que el elemento de guion de instrucciones de temporización ordena al navegador web que cargue un elemento embebido, el cual está embebido en una página web de terceros, en el navegador web por primera vez y determina un primer tiempo de carga del elemento embebido. Después de esto, el elemento de guion de instrucciones de temporización ordena al navegador web que cargue el elemento embebido en el navegador web por segunda vez y determina un segundo tiempo de carga del elemento embebido.
El método está adaptado para determinar si el usuario (o el navegador web del usuario) ha accedido previamente a la página web de un tercero. Cuando el navegador web carga y ejecuta la página web de la primera parte, el elemento de guion de instrucciones de temporización carga uno o más elementos embebidos de la otra página web de terceros dos veces y determina, cada vez, el tiempo de carga correspondiente del elemento embebido respectivo. Por ejemplo, el elemento de guion de instrucciones de temporización puede determinar un tiempo de inicio de carga, crear dinámicamente un elemento HTML y/u objeto HTML para el elemento embebido y, después de esto, puede determinar un tiempo de fin de carga, cuando el navegador web haya evaluado el elemento/objeto HTML y finalmente lo haya cargado en la memoria caché. El tiempo de carga, por ejemplo, el primer y/o segundo tiempos de carga, puede ser, entonces, la diferencia entre el tiempo de fin de carga y el tiempo de inicio de carga. El tiempo de inicio de carga y/o el tiempo de fin de carga se pueden determinar con una llamada de una función de tiempo, tal como "new Date()" o tal como "performance.now" o "console.time" proporcionadas en implementaciones de Javascript específicas.
El tiempo de inicio de carga se puede determinar cuando se fija el URL del elemento/objeto HTML creado dinámicamente. Por ejemplo, para una imagen embebida y/o un archivo Javascript embebido en calidad de elemento embebido, el tiempo de inicio de carga puede determinarse cuando se fija el atributo "src".
El tiempo de fin de carga se puede determinar con un evento de carga del elemento/objeto HTML posiblemente creado de manera dinámica. Se llama al evento de carga cuando el navegador web ha cargado el elemento embebido. Por ejemplo, las etiquetas HTML <frame>, <frameset>, <iframe>, <img>, <input type="image">, <script> y <style> proporcionan un evento de carga del tipo mencionado.
Cuando el navegador web ya ha accedido a la página web de terceros, la página web de terceros (y sus elementos embebidos) ya se han cargado en la memoria caché de navegador correspondiente al navegador web y el primer y el segundo tiempos de carga son sustancialmente iguales. Cuando el navegador web no ha accedido a la página
web de terceros, el elemento embebido no se ha cargado en la memoria caché del navegador y, habitualmente, el primer tiempo de carga es mucho mayor que el segundo tiempo de carga debido al hecho de que el elemento embebido se tiene que cargar por medio de Internet en el navegador web.
El elemento embebido puede ser un elemento de la página web de terceros, que puede solicitarse desde el servidor web de terceros con un URL diferente del URL de la página web de terceros. Por ejemplo, el elemento embebido puede codificarse con una etiqueta HTML que admita el atributo "src". Son ejemplos de un elemento embebido de este tipo una imagen (etiqueta <img>) o un elemento de guion de instrucciones (etiqueta <script>). Otro ejemplo de un elemento embebido es una hoja de estilo en cascada. En calidad de elemento embebido pueden usarse todos los elementos antes mencionados.
Además, el método comprende: decidir, sobre la base del primer tiempo de carga y del segundo tiempo de carga, si el navegador web ha cargado previamente la página web de un tercero. Cuando el primer tiempo de carga difiere sustancialmente con respecto al segundo tiempo de carga, se puede decidir que el navegador web (y, por lo tanto, el usuario) ya ha visitado la página web de un tercero. La decisión de si dos tiempos de carga difieren puede ser calculada por el navegador web (con el elemento de guion de instrucciones) y/o por el servidor web de la primera parte y/o por el servidor web de la segunda parte.
Debe señalarse que puede ser posible que, desde la última visita de la página web de un tercero, se haya borrado la memoria caché o la parte correspondiente de la memoria caché del navegador web. En este caso, se puede concluir (falsamente) que el usuario no ha visitado la página web de un tercero. No obstante, cuando los tiempos de carga difieren sustancialmente, puede darse una alta probabilidad de que el usuario realmente ya haya visitado la página web de un tercero.
Según una realización de la invención, la página web de la primera parte comprende un elemento de guion de instrucciones de carga, en donde el elemento de guion de instrucciones de carga comprende código de guion de instrucciones para cargar el elemento de guion de instrucciones de temporización en el navegador web desde el servidor de la primera parte y/o de una segunda parte. El elemento de guion de instrucciones de carga puede ser una etiqueta <script> que tenga un URL al elemento de guion de instrucciones de temporización que puede ser proporcionado por el mismo servidor web u otro diferente. Por ejemplo, el elemento de guion de instrucciones de temporización puede ser proporcionado por el servidor web de la segunda parte. El servidor web de la segunda parte puede proporcionar una versión concreta del elemento de guion de instrucciones de temporización y/o también puede proporcionar URLs concretos, los cuales pueden integrarse dinámicamente en el elemento de guion de instrucciones de temporización, para que el elemento o elementos embebidos se carguen desde el servidor web de un tercero.
Según una realización de la invención, el elemento de guion de instrucciones de temporización envía el primer y el segundo tiempos de carga al servidor web de la primera parte y/o a un servidor web de la segunda parte. Los tiempos de carga pueden ser evaluados, asimismo, directamente por el elemento de guion de instrucciones de temporización. En este caso, el resultado, es decir, un valor que indica si el elemento embebido se ha cargado previamente en la memoria caché, puede enviarse al servidor web de la primera parte y/o al servidor web de la segunda parte. También puede darse el caso de que el primer y el segundo tiempos de carga, u opcionalmente tiempos de carga adicionales, correspondientes al elemento embebido, sean evaluados de manera alternativa o adicional por uno o ambos de entre los servidores web de la primera y la segunda parte.
Según una realización de la invención, el elemento embebido se carga en el navegador web por medio de un URL. Tal como ya se ha mencionado, el elemento embebido puede especificarse con un URL. Como primer ejemplo, el elemento de guion de instrucciones de temporización puede solicitar el URL correspondiente al elemento embebido, del servidor web de la segunda parte.
Como segundo ejemplo, el URL puede codificarse en el elemento de guion de instrucciones de temporización por parte del servidor web de la segunda parte. A continuación, el URL se puede incluir en una etiqueta generada dinámicamente, por ejemplo, como atributo "src".
Según una realización de la invención, se carga una pluralidad de elementos embebidos por lo menos dos veces en el navegador web y se determinan los dos tiempos de carga primero y segundo subsiguientes para cada elemento embebido. Cuando se comprueba más de un elemento embebido, si ya se ha cargado previamente en la memoria caché, se pueden comprobar simultáneamente diferentes páginas web de terceros del mismo proveedor de servidores web de terceros o de proveedores diferentes.
Según una realización de la invención, el elemento de guion de instrucciones de temporización ordena al navegador web que cargue el elemento embebido en el navegador web por lo menos una tercera vez y que determine por lo menos un tercer tiempo de carga del elemento embebido, en donde la decisión de que el navegador web ha cargado previamente la página web de terceros se basa además en al menos el tercer tiempo de carga. Con el fin de incrementar la precisión de la medición del tiempo de carga, el elemento embebido se puede cargar más de dos veces. En este caso, la comprobación, de si el navegador web ha cargado previamente la página web de un tercero
y/o el elemento embebido, se puede llevar a cabo determinando si el primer tiempo de carga es mayor que el segundo y el tercer tiempos de carga.
Según una realización de la invención, el método comprende, además: determinar si la diferencia entre el primer tiempo de carga y el segundo tiempo de carga es menor que un umbral, y en este caso decidir que se ha cargado previamente la página web de un tercero. En ese caso, cuando el elemento embebido no está presente en la memoria caché del navegador, el primer tiempo de carga será mucho mayor que el segundo tiempo de carga. Para determinar esto, se puede determinar una diferencia entre el primer y el segundo tiempos de carga y la misma se puede comparar con un umbral. Este umbral puede ser estático, por ejemplo, puede ser un valor estático asociado al elemento embebido. Por ejemplo, el umbral puede ser 120 ms.
Según una realización de la invención, el umbral es un umbral dinámico determinado por el elemento de guion de instrucciones de temporización, el servidor web de la primera parte y/o un servidor web de la segunda parte. También puede ser posible que el umbral no sea estático sino que se determine sobre la base del entorno concreto del navegador web. Por ejemplo, un umbral dinámico puede determinarse sobre la base de una diferencia entre el segundo tiempo de carga y un tercer tiempo de carga, o de una desviación de tiempos de carga del elemento embebido después de la primera carga. Dicha diferencia o desviación puede ser indicativa de fluctuaciones estadísticas en el tiempo de carga. Cuando la diferencia o desviación es mucho menor, tal como 1/2 ó 1/3 del primer tiempo de carga, entonces puede suponerse que, durante el primer tiempo de carga, el elemento embebido se cargó en la memoria caché por medio de Internet.
Según una realización de la invención, el umbral dinámico depende del tamaño del elemento embebido. El umbral dinámico puede depender del tamaño, es decir, cuanto mayor sea el tamaño, mayor podrá ser el umbral dinámico. Según una realización de la invención, el umbral dinámico depende del tiempo de carga de un elemento de referencia comparativo proporcionado por el servidor web de la primera parte y/o un servidor web de la segunda parte. También puede que resulte posible cargar un elemento de referencia comparativo, tal como una imagen, que puede tener un tamaño conocido. A partir del primer tiempo de carga de un elemento de referencia comparativo, se puede estimar el ancho de banda de la conexión a Internet del navegador web.
Según una realización de la invención, durante la primera o segunda vez, al navegador web se le ordena que cargue directamente el elemento embebido desde el servidor web de terceros. Carga directa puede significar que el elemento embebido se carga por medio de Internet, sin cargarlo desde la memoria caché del navegador. Puede que resulte posible que, para la primera vez, se admita que el navegador web cargue el elemento embebido o bien desde la memoria caché del navegador o bien por medio de Internet, cuando el elemento embebido no está presente en la memoria caché del navegador. Este puede ser el comportamiento convencional del navegador web. Para la segunda vez, al navegador web se le puede obligar a cargar directamente el elemento embebido por medio de Internet. De esta manera, cuando el primer tiempo de carga es menor que el segundo tiempo de carga, por ejemplo, menor según un umbral, se puede decidir que el elemento embebido no estaba presente en la memoria caché del navegador.
Según una realización de la invención, al navegador web se le ordena que cargue por lo menos una vez el elemento embebido por medio de un URL alternativo que contiene una cadena de consulta aleatoria. Una posibilidad para obligar al navegador web a cargar directamente el elemento embebido desde el servidor de terceros es usando la cadena de consulta del URL. La cadena de consulta puede ser la última parte de un URL después de un "?". Al URL convencional del elemento embebido, se le pueden añadir un "?" y un número aleatorio. Puesto que este URL alternativo no está presente habitualmente en la memoria caché del navegador, esto puede provocar que el navegador web cargue el elemento embebido directamente desde el servidor de terceros, que normalmente ignorará la cadena de consulta.
Según una realización de la invención, al navegador web se le ordena que cargue el elemento embebido por medio de un URL alternativo que contiene una cadena de consulta aleatoria sin determinar el tiempo de carga. Esto puede realizarse antes de que se determinen el primer y el segundo tiempos de carga y puede hacer que mejoren las mediciones, ya que el establecimiento de la conexión TCP y la búsqueda de DNS no pueden influir en la duración del primer tiempo de carga.
Según una realización de la invención, el método comprende, además: explorar por lo menos dos páginas web de terceros con un servidor web de una segunda parte en relación con elementos embebidos; buscar un conjunto de elementos embebidos únicos para cada página web de terceros; y proporcionar URLs para un conjunto de elementos embebidos únicos al elemento de guion de instrucciones de temporización. Puede que sea posible que el servidor web de la segunda parte monitorice los servidores web de terceros, ya sea que su contenido cambie y/o ya sea que se eliminen elementos embebidos usados para el seguimiento. Además, el servidor web de la segunda parte puede buscar elementos en estas páginas web que potencialmente pueden utilizarse como elementos embebidos para el seguimiento.
Cuando se usan más de un elemento embebido proporcionado por una página web para el seguimiento, se puede proporcionar, entonces, una combinación única de elementos embebidos. Por ejemplo, un elemento embebido
puede ser una imagen de un logotipo del proveedor de páginas web de terceros. Esta imagen del logotipo se puede incluir en cada página web del proveedor de páginas web de terceros. Cuando se buscan más elementos en estas páginas web, como huella digital para la página web respectiva se puede proporcionar una combinación de elementos embebidos, tal como una o más imágenes, uno o más guiones de instrucciones, etcétera.
Cuando se monitoriza regularmente una página web de un tercero en relación con posibles elementos embebidos y, en particular, en relación con elementos embebidos eliminados y recién incluidos, se puede generar una huella digital dependiente del tiempo para una página web. En este caso, incluso se puede generar un intervalo de tiempo en el que el navegador web ha accedido a la página web de un tercero, determinando si el navegador web ha cargado previamente huellas digitales diferentes, es decir, combinaciones diferentes de elementos embebidos. Un aspecto adicional de la invención se refiere a un programa de ordenador para determinar si un navegador web ha accedido a una página web de un tercero, que, cuando es ejecutado por al menos un servidor web y/o un navegador web, está adaptado para llevar a cabo las etapas del método según se describe anteriormente y en lo sucesivo. Por ejemplo, el programa de ordenador puede comprender código ejecutado por el servidor web de la primera parte y/o el servidor web de la segunda parte. Además, el programa de ordenador puede comprender los elementos de guion de instrucciones de carga y/o temporización.
Un aspecto adicional de la invención se refiere a un soporte legible por ordenador, en el cual se almacena dicho programa de ordenador. Un soporte legible por ordenador puede ser un disco flexible, un disco duro, un dispositivo de almacenamiento USB (Bus Serie Universal), una RAM (Memoria de Acceso Aleatorio), una ROM (Memoria de Solo Lectura), una EPROM (Memoria de Solo Lectura Programable Borrable) o una memoria FLASH. Un soporte legible por ordenador también puede ser una red de comunicación de datos, por ejemplo Internet, que permite descargar un código de programa. En general, el soporte legible por ordenador puede ser un soporte no transitorio o transitorio.
Un aspecto adicional de la invención se refiere a un elemento de guion de instrucciones destinado a integrarse en una página web de un servidor web de una primera parte y a ser ejecutado por un navegador web, que está procesando la página web, comprendiendo el elemento de guion de instrucciones código para: solicitar o codificar por lo menos un URL para por lo menos un elemento embebido de una página web de un tercero; ordenar al navegador web que cargue el elemento embebido en el navegador por primera vez y que determine un primer tiempo de carga del elemento embebido; ordenar al navegador web que cargue el elemento embebido en el navegador por segunda vez y que determine un segundo tiempo de carga del elemento embebido; y para enviar el primer tiempo de carga y el segundo tiempo de carga y/o datos de temporización determinados a partir del primer tiempo de carga y del segundo tiempo de carga al servidor web de la primera parte o a un servidor web de una segunda parte.
El primer tiempo de carga y/o el segundo tiempo de carga pueden incluir valores de tiempo absoluto, tales como el tiempo de inicio de carga y/o el tiempo de fin de carga. Además, el primer tiempo de carga y/o el segundo tiempo de carga pueden incluir diferencias de tiempo, por ejemplo, entre el tiempo de inicio de carga y/o el tiempo de fin de carga. Los datos de temporización pueden incluir valores de tiempo absoluto y/o diferencias de tiempo adicionales y/o valores obtenidos a partir de estos. Unos de los datos posibles de temporización pueden ser la decisión de si se ha cargado un elemento embebido, lo cual se puede codificar con "sí" y "no" o se puede codificar con "1" y "0". Otros datos de tiempo posibles pueden ser la decisión de que se ha cargado previamente la página web de un tercero. No obstante, los datos de temporización también pueden determinarse en el lado del servidor, por ejemplo, por parte del servidor web de la primera parte y/o del servidor web de la segunda parte.
Un aspecto adicional de la invención se refiere a un sistema de seguimiento, el cual puede comprender el servidor web de la primera y/o la segunda parte. Los servidores web pueden comprender dispositivos de hardware y/o pueden ser proporcionados por una máquina virtual que, por ejemplo, puede ser proporcionada por unas instalaciones informáticas en la nube.
Según una realización de la invención, el sistema de seguimiento comprende un servidor web de una primera parte para proporcionar una página web de una primera parte, comprendiendo o integrando dicha página web de una primera parte un elemento de guion de instrucciones de temporización según se describe anteriormente y en lo sucesivo.
Según una realización de la invención, el sistema de seguimiento comprende un servidor web de una segunda parte según se describe anteriormente y en lo sucesivo para proporcionar un elemento de guion de instrucciones de temporización destinado a integrarse en una página web de una primera parte y/o para decidir, sobre la base del primer tiempo de carga y del segundo tiempo de carga, si el navegador web ha cargado previamente la página web de terceros.
Debe entenderse que las características del método según se describe anteriormente y en lo sucesivo pueden ser características del programa de ordenador, del soporte legible por ordenador y/o del sistema de seguimiento según se describe anteriormente y en lo sucesivo, y viceversa.
Estos y otros aspectos de la invención se pondrán de manifiesto y se dilucidarán en referencia a las realizaciones descritas a continuación en la presente.
Breve descripción de los dibujos
A continuación, se describen más detalladamente realizaciones de la presente invención en referencia a los dibujos adjuntos.
La Fig. 1 muestra esquemáticamente un sistema de seguimiento según una realización de la invención.
La Fig. 2 muestra un diagrama de flujo correspondiente a un método de seguimiento según una realización de la invención.
La Fig. 3 muestra un diagrama con tiempos de carga generados con el método de la Fig. 2.
Los símbolos de referencia usados en los dibujos, y sus significados, se enumeran de manera resumida en la lista de símbolos de referencia. En principio, a las partes idénticas se les asignan los mismos símbolos de referencia en las figuras.
Descripción detallada de realizaciones ejemplificativas
La Fig. 1 muestra un sistema 10 que comprende un servidor web 12 de una primera parte, un servidor web 14 de una segunda parte y uno o más servidores web 16 de terceros. El servidor web 12 de la primera parte también puede llevar a cabo las tareas y/o funciones del servidor web 14 de la segunda parte según se describe anteriormente y en lo sucesivo. Los servidores web 12, 14, 16 pueden estar alejados entre sí y/o se pueden implementar también como dispositivos de hardware independientes. También puede resultar posible que los servidores 12, 14, 16 se implementen como máquinas virtuales en instalaciones informáticas en la nube.
Además, el sistema 10 comprende un dispositivo informático 18, tal como un PC, una tableta, un teléfono inteligente, etcétera, que comprende un navegador web 20, el cual puede ser ejecutado por el dispositivo informático 18. Los servidores web 12, 14, 16 y el dispositivo informático 18 están interconectados a través de Internet 21 y/o se pueden comunicar entre sí a través del protocolo HTTP/HTTPS.
Los servidores web 16 de terceros, que son explotados por uno o más proveedores de terceros, pueden proporcionar una o más páginas web 22, a las que puede acceder el navegador web 20. Un usuario del dispositivo informático 18 puede navegar por Internet, es decir, puede solicitar y visualizar páginas web por medio del navegador web 20, y puede visitar la(s) página(s) web 22 del(de los) servidor(es) web 16 de terceros. La(s) página(s) web 22 puede(n) estar codificada(s) en HTML y el navegador web 20 puede estar adaptado para decodificar HTML y para visualizar texto y/o gráficos correspondientes codificados en la(s) página(s) web 22 en una pantalla del dispositivo informático 18.
Por ejemplo, la(s) página(s) web 22 puede(n) contener información, publicidad sobre productos específicos, etcétera, del (de los) proveedor(es) de terceros.
El proveedor de la primera parte, que explota el servidor web 12 de la primera parte, tiene interés en saber si el usuario del dispositivo informático 18 ha visitado la(s) página(s) web 22 del proveedor de un tercero.
Por ejemplo, el proveedor de la primera parte puede ser un competidor de los proveedores de terceros y puede saber si el usuario ha visto anuncios específicos y/o productos específicos del (de los) proveedor(es) de terceros. Para obtener información sobre esto, el proveedor de la primera parte usa un sistema 24 de seguimiento proporcionado por el servidor web 12 de la primera parte y el servidor web 14 de la segunda parte. El servidor web 14 de la segunda parte puede ser proporcionado por un proveedor de la segunda parte, que puede prestar soporte al proveedor de la primera parte en la materialización del seguimiento del usuario. Habitualmente, el proveedor de la segunda parte puede prestar soporte simultáneamente a una pluralidad de los proveedores de la primera parte. Cada vez que el usuario del dispositivo informático 18 y, en particular, el navegador web 20 visita y/o solicita una página web 26 específica, el sistema 14 de seguimiento comprueba si el navegador web 20 ya ha visitado la(s) página(s) web 22 del(de los) proveedor(es) de terceros. Igual que la(s) página(s) web 22, la página web 26 se puede codificar en HTML y el navegador web 20 puede estar adaptado para decodificar HTML y visualizar texto y/o gráficos correspondientes codificados en la página web 26 en una pantalla del dispositivo informático 18. Por ejemplo, la página web 26 puede ser una página de un portal de usuario del proveedor de la primera parte y/o puede contener información, publicidad sobre productos específicos, etcétera, del proveedor de la primera parte.
La página web 26 puede comprender un elemento 28 de guion de instrucciones de carga, que se ejecuta cuando el navegador web 20 solicita la página web 26. El elemento 28 de guion de instrucciones de carga puede, entonces, solicitar y/o ejecutar un elemento 30 de guion de instrucciones de temporización desde el servidor web 30 de la segunda parte. El elemento 30 de guion de instrucciones de temporización, que se puede crear dinámicamente
desde el servidor web 14 de la segunda parte, puede comprender información sobre la página o páginas web 22 de terceros y/o sobre uno o más elementos embebidos 34 codificados en la(s) página(s) web 22 de terceros.
El elemento 28 de guion de instrucciones de carga y el elemento 30 de guion de instrucciones de temporización pueden estar codificados en Javascript ©. En general, los elementos 28, 30 de guion de instrucciones pueden comprender código de guion de instrucciones, ejecutable por el navegador web 20.
Los elementos embebidos 34 pueden ser elementos que se almacenan por separado desde la página web de terceros, es decir, pueden tener un URL diferente de la página web 22. Este URL puede estar codificado en el elemento 30 de guion de instrucciones de temporización. Por ejemplo, los elementos embebidos pueden ser imágenes, películas, páginas web embebidas, marcos embebidos, guiones de instrucciones, hojas de estilo, etcétera. Cuando el navegador web 20 solicita la página web 22, decodificará la página web 22 y cargará por separado el elemento o elementos embebidos 34.
Cuando se ejecuta por medio del navegador web 20, el elemento 30 de guion de instrucciones de temporización puede ordenar al navegador web 20 que cargue el elemento o elementos embebidos 34. A continuación, el navegador web 20 verificará si el elemento embebido 34 correspondiente ya está presente en una memoria caché 36 del navegador. En caso negativo, el navegador web 20 cargará el elemento embebido 34 a través de Internet en la memoria caché 36 del navegador. Puesto que el tiempo de carga del elemento embebido 34 depende sustancialmente de si el mismo está presente o no en la memoria caché 36 del navegador, es decir, de si solamente tiene que cargarse desde unos medios de almacenamiento locales del dispositivo informático 18 ó desde unos medios de almacenamiento remotos del servidor web 16, el tiempo de carga puede proporcionar una indicación de si el elemento embebido ya fue solicitado por el navegador web 20. En este caso, puede suponerse que el usuario ya ha visitado la página web 22 de terceros.
Para estudiar comparativamente el navegador web 20, el servidor web 14 de la segunda parte puede proporcionar un elemento 38 de referencia comparativo, que, por ejemplo, puede ser una imagen. El elemento 30 de guion de instrucciones de temporización puede ordenar al navegador web 20 que cargue el elemento 38 de referencia comparativo y/o puede medir este tiempo de carga de referencia comparativo. Por ejemplo, se puede hacer que el URL del elemento 38 de referencia comparativo sea diferente para cada llamada del elemento 30 de guion de instrucciones de temporización por parte del servidor web 14 de la segunda parte. En este caso, el tiempo de carga de referencia comparativo puede proporcionar una indicación sobre el ancho de banda del dispositivo informático 18 y/o el navegador web 20. Un umbral para el(los) tiempo(s) de carga del (de los) elemento(s) embebido(s) 34 se puede basar, entonces, en el tiempo de carga de referencia comparativo.
La Fig. 2 muestra un diagrama de flujo correspondiente a un método de seguimiento, es decir, un método para determinar si el navegador web 20 ha accedido a una página web 22 de terceros.
En la etapa S10, la página web 26 de la primera parte es proporcionada por el servidor web 12 de la primera parte, comprendiendo dicha página web 26 de la primera parte, o estando adaptada para cargar, el elemento 30 de guion de instrucciones de temporización. Por ejemplo, la página web 26 de la primera parte comprende un elemento 28 de guion de instrucciones de carga, que se puede basar simplemente en una etiqueta <script>.
En la etapa S12, el usuario accede a la página web 26 de la primera parte, que a continuación se carga a través de Internet 21 y es procesada por el navegador web 20. Habitualmente, el navegador web 20 visualizará imágenes y textos codificados en la página web 26 y ejecutará el código de guion de instrucciones codificado en la página web 26.
Cuando el navegador web llega al elemento 28 de guion de instrucciones de carga, que puede comprender un URL del elemento 30 de guion de instrucciones de temporización, el navegador web 20 carga el elemento 30 de guion de instrucciones de temporización desde el servidor web 14 de la segunda parte y lo ejecuta.
A continuación, el elemento 30 de guion de instrucciones de temporización ordena al navegador web 20 que cargue un elemento embebido 34, que está embebido en una página web 22 de terceros, en el navegador web 20 por lo menos dos veces y que determine un primer tiempo de carga t1 y un segundo tiempo de carga t2 del elemento embebido 34. Puede resultar posible que se cargue más de un elemento embebido 34 desde una y/o más páginas web 22 de terceros.
Puede que sea posible que el elemento 30 de guion de instrucciones de temporización sea generado dinámicamente por el servidor web 14 de la segunda parte. Por ejemplo, la generación del elemento 30 de guion de instrucciones de temporización puede basarse en una identificación del usuario.
Existen varias posibilidades sobre cómo se identifica el usuario en el servidor web 12 de la primera parte y/o el servidor web 14 de la segunda parte. El usuario puede autenticarse en el proveedor de la primera parte y/o el servidor web 26 de la primera parte. Por ejemplo, el usuario puede haber abierto sesión en un portal de usuario, el cual también puede proporcionar la página web 26. También puede que resulte posible identificar el usuario por medio de otra información, tal como identificadores únicos proporcionados por el dispositivo informático, tales como
un número de serie del dispositivo. Asimismo, para identificar el usuario se pueden usar cookies. Además, se puede determinar una huella digital única del usuario a partir de la configuración del navegador web 20 y/o el dispositivo informático 18, la cual puede comprender un tipo y/o número de versión del navegador web 20 y/o subcomponentes instalables por separado, tales como plugins, del navegador web. Dicha información, por ejemplo, puede ser recopilada por el elemento 28 de guion de instrucciones de carga, la cual a continuación se envía al servidor web 12, 14 de la primera y/o segunda parte y allí es evaluada.
Por ejemplo, el elemento embebido 34 puede cargarse en el navegador web 20 por medio de un URL. El elemento 30 de guion de instrucciones de temporización puede solicitar el URL para el elemento embebido 34 del servidor web 14 de la segunda parte o el URL puede estar codificado en el elemento 30 de guion de instrucciones de temporización.
También puede ser posible que el elemento 30 de guion de instrucciones de temporización ordene al navegador web 20 que cargue el elemento embebido 34 en el navegador web 20 más de dos veces y que determine tiempos de carga adicionales del elemento embebido 34.
Por ejemplo, la Fig. 3 muestra un diagrama con tiempos de carga para dos elementos embebidos diferentes 34a, 34b. Por ejemplo, el primer elemento embebido 34a puede incluirse en una primera página web 22 de un primer proveedor de terceros y el segundo elemento 34b puede incluirse en una segunda página web 22 de un segundo proveedor de terceros. A continuación, se supone que el usuario ha visitado la página web 22 del segundo proveedor de terceros pero no la del primer proveedor de terceros.
El elemento 30 de guion de instrucciones de carga ordena al navegador web 20 que cargue el primer elemento embebido 34a y el segundo elemento embebido 34b durante un primer tiempo de carga t1, un segundo tiempo de carga t2 y un tercer tiempo de carga t3. Tal como puede observarse a partir del diagrama, para el primer elemento embebido 34a, el primer tiempo de carga t1 es mayor que el segundo tiempo de carga t2 y el tercer tiempo de carga t3. Por lo tanto, se puede suponer que el primer elemento embebido 34a se ha cargado en la memoria caché 20 del navegador a través de Internet y que el usuario no ha visitado la página web 22 de terceros correspondiente. Por otro lado, los tres tiempos de carga t1, t2 y t3 del segundo elemento embebido 34b son sustancialmente iguales. Por lo tanto, se puede suponer que el elemento embebido 34b ya se ha cargado en la memoria caché 36 del navegador y que el usuario ha visitado la página web correspondiente.
Cada tiempo de carga t 1, t2 y t3 se puede medir de la siguiente manera. El elemento 30 de guion de instrucciones de temporización puede generar un objeto HTML para el elemento embebido 34 dinámicamente, por ejemplo, accediendo al modelo de objetos del documento de la página web 26. Cuando se fija el URL del elemento embebido en el objeto HTML, que ordena al navegador web que dé inicio a la carga del elemento embebido 34, se puede medir un primer tiempo. Por ejemplo, el URL se puede fijar ajustando el atributo src de una etiqueta de imagen. Además, el elemento 30 de guion de instrucciones de temporización puede fijar el evento OnLoad del elemento embebido 34 con una función, que mide un segundo tiempo y a la cual se llama cuando el navegador web ha terminado de cargar el elemento embebido. Después de esto, se puede calcular la diferencia entre el segundo tiempo y el primer tiempo como tiempo de carga.
Volviendo a la Fig. 2, en la etapa S14, se decide, sobre la base de los tiempos de carga t1, t2 , t3, si el navegador web 20 ha cargado previamente la página web 22 de terceros. Esta decisión puede tomarla el elemento 30 de guion de instrucciones de temporización, es decir, el navegador web del servidor web 14 de la segunda parte. Por ejemplo, el elemento 30 de guion de instrucciones de temporización puede enviar los tiempos de carga t1, t2 , t3 (o incluso el primer y segundo tiempos medidos antes y después de la carga) al servidor web 14 de la segunda parte, que a continuación evalúa la información recibida.
Con respecto a la Fig. 3, la decisión de que el navegador web 20 ha cargado previamente la página web 22 de terceros puede basarse en un umbral 40. Este umbral puede determinarse a partir de los tiempos de carga t 1, t2 y t3 y/o del tiempo de carga de un elemento 38 de referencia comparativo, que también puede cargarse por medio del elemento 30 de guion de instrucciones de temporización y/o pudiéndose enviar dicho(s) tiempo(s) de carga al servidor web 14 de la segunda parte. Por ejemplo, el propio elemento 30 de guion de instrucciones de temporización puede ser el elemento 38 de referencia comparativo.
El umbral 40 puede ser un umbral dinámico determinado por el elemento 30 de guion de instrucciones de temporización, el servidor web 12 de la primera parte y/o un servidor web 14 de una segunda parte. Por ejemplo, el umbral 40 puede determinarse a partir del tamaño del elemento embebido 34. También puede ser posible que el umbral 40 dependa de un valor medio del segundo tiempo y tiempos de carga subsiguientes t1, t2 , t3.
La decisión de que la página web 22 de terceros se ha cargado previamente se puede basar en si el primer tiempo de carga t1 y/o la diferencia 42 entre el primer tiempo de carga t1 y el segundo tiempo de carga t2 (o un valor medio del segundo tiempo y tiempos de carga subsiguientes) es menor que el umbral 40.
Con respecto al ejemplo de la Fig. 3, puesto que el tiempo de carga t1 del primer elemento embebido 34a es mayor que el umbral 40, se puede determinar que el usuario no ha visitado la página web 22 correspondiente. Por otro
lado, el tiempo de carga ti del segundo elemento embebido 34b es inferior al umbral 40, y se puede determinar que el usuario ha visitado la página web 22 correspondiente.
También puede ser posible determinar una diferencia 42 entre el primer tiempo de carga t1 y el segundo tiempo de carga t2 y comparar la misma con un umbral 40.
Otra de las posibilidades consiste en ordenar al navegador web 20 que cargue en primer lugar el elemento embebido 34 directamente desde el servidor web 16 de terceros con un URL alternativo sin determinar el tiempo de carga y/o sin influir en la memoria caché 36 del navegador con respecto al URL convencional del elemento embebido 34. Cuando esto se lleva a cabo antes de que el elemento embebido 34 se cargue dos o más veces según se ha descrito anteriormente, esto puede hacer que mejore la determinación de los tiempos de carga t 1, t2 , t3, ya que el establecimiento de la conexión TCP y la búsqueda de DNS no pueden influir en la duración de los tiempos de carga.
Por ejemplo, cuando se remite al elemento embebido 34 en la página web de un tercero con ".../image.jpg" como URL convencional, se puede hacer creer al navegador web 20 que se va a cargar un elemento embebido diferente proporcionando el URL ".../image.jpg?1233646", es decir, un URL con una cadena de consulta aleatoria. El navegador web buscará en la memoria caché 36 del navegador, no encontrará el URL alternativo y cargará el elemento embebido a través de Internet, ya que habitualmente el servidor web 16 de terceros ignorará la cadena de consulta. Esto además no puede influir en la memoria caché 36 del navegador con respecto al URL convencional, lo cual se puede comprobar según se ha descrito anteriormente.
Este comportamiento también se puede usar para determinar un tiempo de carga t1, t2 , t3 del elemento embebido 34, que se corresponde con la carga del elemento embebido a través de Internet desde el servidor web de terceros 22. En otras palabras, en la exposición anterior, el primer tiempo de carga, el segundo tiempo de carga y/o tiempos de carga adicionales pueden determinarse con un URL alternativo basado en una cadena de consulta aleatoria.
En general, más de un elemento embebido 34 de una página web 22 de un tercero puede cargarse por lo menos dos veces en el navegador web 20 y se determinan dos tiempos de carga subsiguientes t1, t2 , o más para cada elemento embebido 34. Por ejemplo, el servidor web 16 de terceros puede proporcionar más de una página web 22, que, no obstante, comprende diferentes combinaciones de elementos embebidos 34. Identificando la combinación de elementos embebidos 34, que se han cargado en la memoria caché 36 del navegador, incluso se puede identificar la página web 22 respectiva.
Además, puede que sea posible que, con un elemento 30 de guion de instrucciones de temporización, se comprueben no solamente una sino dos o más páginas web 22 de terceros de diferentes proveedores de terceros. La información de si un usuario ha visitado o no una página web 22 de terceros específica puede almacenarse en un perfil de usuario correspondiente al usuario en el servidor web 12 de la primera parte y/o el servidor web 14 de la segunda parte. Por ejemplo, el perfil del usuario puede identificarse según se ha descrito anteriormente por medio de una autenticación y/o identificación del usuario.
El servidor web 14 de la segunda parte puede identificar automáticamente elementos embebidos 34 embebidos en una página web 22 de un tercero, cuando se debe generar un elemento 30 de guion de instrucciones de temporización para la página web 22 de terceros. También puede ser posible que el servidor web 14 de la segunda parte verifique de manera automática y/o regular si han cambiado la página web 22 de terceros y/o elementos 34 correspondientes. En particular, el servidor web de la segunda parte puede identificar un elemento embebido 34 único y/o una combinación única de elementos embebidos 34. Por lo tanto, en la etapa S16, el servidor web 14 de la segunda parte explora por lo menos dos páginas web 22 de terceros en relación con elementos embebidos 34 y busca un conjunto de elementos embebidos 34 únicos para cada página web 22 de terceros. Los URLs para un conjunto de elementos embebidos 34 únicos se pueden proporcionar para el elemento 30 de guion de instrucciones de temporización.
Aunque la invención se ha ilustrado y descrito de manera detallada en los dibujos y la descripción anterior, en las reivindicaciones se definen realizaciones de la invención.
Lista de símbolos de referencia
10 sistema
12 servidor web de una primera parte
14 servidor web de una segunda parte
16 servidor web de terceros
18 dispositivo informático
navegador web
Internet
página web de terceros
sistema de seguimiento
página web de una primera parte
elemento de guion de instrucciones de carga elemento de guion de instrucciones de temporización elemento embebido
memoria caché del navegador
elemento de referencia comparativo
umbral
Claims (12)
1. Método para determinar si un navegador web (20) ha accedido a una página web (22) de terceros, comprendiendo el método:
proporcionar una página web (26) de una primera parte por medio de un servidor web (12) de una primera parte, comprendiendo dicha página web (26) de la primera parte un elemento (28) de guion de instrucciones de carga, en donde el elemento (28) de guion de instrucciones de carga comprende código de guion de instrucciones para cargar un elemento (30) de guion de instrucciones de temporización en el navegador web (20) desde un servidor web (14) de una segunda parte;
procesar la página web (26) de la primera parte con el navegador web (20), de tal manera que el elemento (30) de guion de instrucciones de temporización ordena al navegador web (20) que cargue un elemento embebido (34), el cual está embebido en la página web (22) de terceros, en el navegador web (20) una primera vez y que determine un primer tiempo de carga (t1) del elemento embebido (34), y el elemento (30) de guion de instrucciones de temporización ordena al navegador web (20) que cargue el elemento embebido (34) en el navegador web (20) una segunda vez y que determine un segundo tiempo de carga (t2) del elemento embebido (34), en donde el elemento (30) de guion de instrucciones de temporización solicita un URL para el elemento embebido (34) del servidor web (14) de la segunda parte o el URL se codifica en el elemento (30) de guion de instrucciones de temporización;
decidir, sobre la base del primer tiempo de carga (t1) y del segundo tiempo de carga (t2), si el navegador web (20) ha cargado previamente la página web (22) de terceros;
en donde, al navegador web (20) se le ordena cargar por lo menos una vez el elemento embebido (34) por medio de un URL alternativo que contiene una cadena de consulta aleatoria, antes de que se determinen el primer tiempo de carga (t1) y el segundo tiempo de carga (t2).
2. Método de la reivindicación 1,
en el que el elemento (30) de guion de instrucciones de temporización envía el primer tiempo de carga (t1) y el segundo tiempo de carga (t2) al servidor web (12) de la primera parte y/o al servidor web (14) de la segunda parte.
3. Método de una de las reivindicaciones anteriores,
en el que una pluralidad de elementos embebidos (34) se carga por lo menos dos veces en el navegador web (20) y, para cada elemento embebido (34), se determinan dos tiempos de carga (t1, t2) subsiguientes.
4. Método de una de las reivindicaciones anteriores,
en el que el elemento (30) de guion de instrucciones de temporización ordena al navegador web (20) que cargue el elemento embebido (34) en el navegador web (20) por lo menos una tercera vez y que determine por lo menos un tercer tiempo de carga (t3) del elemento embebido (34);
en el que la decisión de que el navegador web (20) ha cargado previamente la página web (22) de terceros se basa adicionalmente en el por lo menos un tercer tiempo de carga (t3).
5. Método de una de las reivindicaciones anteriores, que comprende, además:
determinar si un umbral (40) es menor que el primer tiempo de carga (t1) y/o una diferencia (42) entre el primer tiempo de carga (t1) y el segundo tiempo de carga (t2) y, cuando el umbral es menor, decidir que la página web de terceros no se ha cargado previamente.
6. Método de la reivindicación 5,
en el que el umbral (40) es un umbral dinámico determinado por el elemento (30) de guion de instrucciones de temporización, el servidor web (12) de la primera parte y/o el servidor web (14) de la segunda parte.
7. Método de una de las reivindicaciones 1 a 4,
en el que al navegador web (20) se le ordena, durante la primera o segunda vez, que cargue directamente el elemento embebido (34) desde un servidor web (16) de terceros que proporciona la página web (22) de terceros.
8. Método de una de las reivindicaciones anteriores,
en el que el elemento embebido (34) es un elemento de la página web (22) de terceros, que se puede solicitar desde un servidor web (16) de terceros que proporciona la página web (22) de terceros, con un URL diferente del URL de la página web (22) de terceros; y/o
en el que el elemento embebido (34) es una imagen, una hoja de estilo en cascada y/o un elemento de guion
de instrucciones.
9. Método de una de las reivindicaciones anteriores, que comprende, además:
explorar por lo menos dos páginas webs (22) de terceros en relación con elementos embebidos (34) con el servidor web (14) de la segunda parte;
buscar un conjunto de elementos embebidos (34) únicos para cada página web (22) de terceros; proporcionar URLs correspondientes a un conjunto de elementos embebidos (34) únicos al elemento (30) de guion de instrucciones de temporización.
10. Programa de ordenador para determinar si un navegador web (20) ha accedido a una página web (22) de terceros, que, cuando es ejecutado por al menos un servidor web (12, 14) y un navegador web (20), está adaptado para llevar a cabo las etapas del método de una de las reivindicaciones anteriores.
11. Soporte legible por ordenador, en el cual está almacenado un programa de ordenador según la reivindicación 10.
12. Sistema (24) de seguimiento para determinar si un navegador web (20) ha accedido a una página web (22) de terceros, comprendiendo el sistema: un servidor web (12) de una primera parte y un servidor web (14) de una segunda parte, en donde el servidor web (12) de la primera parte está adaptado para proporcionar una página web (26) de la primera parte, comprendiendo dicha página web (26) de la primera parte un elemento (28) de guion de instrucciones de carga, en donde el elemento (28) de guion de instrucciones de carga comprende código de guion de instrucciones para cargar un elemento (30) de guion de instrucciones de temporización en el navegador web (20) desde el servidor web (14) de la segunda parte; en donde la página web (26) de la primera parte se procesa con el navegador web (20), de tal manera que el elemento (30) de guion de instrucciones de temporización ordena al navegador web (20) que cargue un elemento embebido (34), el cual está embebido en la página web (22) de terceros, en el navegador web (20) una primera vez y que determine un primer tiempo de carga (t1) del elemento embebido (34), y el elemento (30) de guion de instrucciones de temporización ordena al navegador web (20) que cargue el elemento embebido (34) en el navegador web (20) una segunda vez y que determine un segundo tiempo de carga (t2) del elemento embebido (34), en donde el elemento (30) de guion de instrucciones de temporización solicita un URL para el elemento embebido (34) desde el servidor web (14) de la segunda parte o el URL se codifica en el elemento (30) de guion de instrucciones de temporización; en donde el servidor web (14) de la segunda parte está adaptado para decidir, sobre la base del primer tiempo de carga (t1) y del segundo tiempo de carga (t2), si el navegador web (20) ha cargado previamente la página web (22) de terceros; y en donde, al navegador web (20), se le ordena que cargue por lo menos una vez el elemento embebido (34) por medio de un URL alternativo que contiene una cadena de consulta aleatoria, antes de que se determinen el primer tiempo de carga (t1) y el segundo tiempo de carga (t2).
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP16166117.8A EP3236364B1 (en) | 2016-04-20 | 2016-04-20 | Web tracking method and system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2783285T3 true ES2783285T3 (es) | 2020-09-17 |
Family
ID=55808971
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES16166117T Active ES2783285T3 (es) | 2016-04-20 | 2016-04-20 | Método y sistema de seguimiento web |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP3236364B1 (es) |
| ES (1) | ES2783285T3 (es) |
| WO (1) | WO2017182522A1 (es) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111124530B (zh) * | 2019-11-25 | 2023-06-02 | 北京博睿宏远数据科技股份有限公司 | 浏览器首次渲染时间计算方法、装置、浏览器及存储介质 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6792459B2 (en) * | 2000-12-14 | 2004-09-14 | International Business Machines Corporation | Verification of service level agreement contracts in a client server environment |
| EP2087425B1 (en) * | 2006-10-25 | 2019-07-24 | Dynatrace LLC | Methods and apparatus for monitoring web page rendering |
| US20110197136A1 (en) * | 2010-02-10 | 2011-08-11 | StrangeLogic Limited | Web browser instance profiling |
| US8266281B1 (en) * | 2010-04-22 | 2012-09-11 | Imdb.Com, Inc. | Collecting client-side performance metrics and latencies |
| CN104636392B (zh) | 2013-11-13 | 2018-07-27 | 腾讯科技(北京)有限公司 | 进行推荐信息下发的方法、系统、服务器及浏览器 |
-
2016
- 2016-04-20 ES ES16166117T patent/ES2783285T3/es active Active
- 2016-04-20 EP EP16166117.8A patent/EP3236364B1/en active Active
-
2017
- 2017-04-19 WO PCT/EP2017/059289 patent/WO2017182522A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| EP3236364B1 (en) | 2020-01-08 |
| WO2017182522A1 (en) | 2017-10-26 |
| EP3236364A1 (en) | 2017-10-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10614223B2 (en) | Security vulnerability detection | |
| CN107609135B (zh) | 页面元素确定方法及设备、用户行为路径确定方法及装置 | |
| US8832257B2 (en) | System, method and computer readable medium for determining an event generator type | |
| US20110191664A1 (en) | Systems for and methods for detecting url web tracking and consumer opt-out cookies | |
| JP2013508805A5 (es) | ||
| KR101530941B1 (ko) | 피싱 웹사이트들을 검출하기 위한 방법, 시스템 및 클라이언트 단말기 | |
| US20110208850A1 (en) | Systems for and methods of web privacy protection | |
| CN104601601B (zh) | 网络爬虫的检测方法及装置 | |
| CN105335404A (zh) | 页面信息加载方法和装置 | |
| CN105320661A (zh) | 资源的下载方法及装置 | |
| US9450980B2 (en) | Automatic malignant code collecting system | |
| WO2017036059A1 (zh) | 监测用户访问行为的方法、装置、终端设备及系统 | |
| ES2960889T3 (es) | Métodos para detectar elementos de rastreo de una página web y dispositivos servidores relacionados | |
| CN107528858A (zh) | 基于网页的登录方法、装置、设备及存储介质 | |
| WO2015188604A1 (zh) | 钓鱼网页的检测方法和装置 | |
| CN106209487B (zh) | 用于检测网站中网页的安全漏洞的方法及装置 | |
| CN108696562B (zh) | 一种获取网站资源的方法及装置 | |
| US10044694B2 (en) | Server, method and system for authenticating application | |
| US10122807B2 (en) | Computer-implemented method, a network device and computer program products for tracking OPT-OUT user preferences in a global communication network | |
| US10826802B2 (en) | Managing network communication protocols | |
| CN106878345A (zh) | 一种篡改防护的方法及装置 | |
| ES2783285T3 (es) | Método y sistema de seguimiento web | |
| CN106209748B (zh) | 互联网接口的防护方法及装置 | |
| CN104202403B (zh) | 网页浏览的加速方法、云服务器和浏览器 | |
| WO2015195407A1 (en) | Method and apparatus for monitoring and determining page load times |