Comment l’attribution des publicités est implémentée
Cet article est également disponible sur :
Afin d’améliorer le résultat de la monétisation publicitaire pour les sites où un utilisateur a décidé d’activer les publicités, Vivaldi inclut désormais la prise en charge de l’attribution publicitaire. Vous pouvez en savoir plus sur les raisons de ce changement ici.
Cette page vise principalement à décrire comment l’attribution publicitaire est mise en œuvre et à expliquer les choix qui ont conduit à cette mise en œuvre. L’objectif est d’être totalement transparent sur ce qui peut être autorisé et quand.
Comme pour le reste du code du bloqueur de publicités, cette implémentation est entièrement disponible dans nos ensembles de code source publiés. Cela vous permet de vérifier pleinement que notre implémentation est conforme à ce qui est décrit ici et dans d’autres articles.
Autoriser les règles d’attribution des publicités
Le principal défi de la monétisation publicitaire est que de nombreux fournisseurs de publicités s’appuient sur des traceurs connus pour prévenir la fraude au clic et s’assurer qu’une conversion a eu lieu avant de procéder au paiement. La seule solution à cela est malheureusement de permettre le chargement de tels traceurs, indépendamment de ce que disent nos listes de blocage de traceurs. Cependant, nous voulons également nous assurer que ces traceurs ne sont pas chargés dans le cadre de la navigation générale.
Afin de satisfaire à toutes ces exigences, nous avons étendu le format habituel des règles de blocage des publicités. C’est le même format utilisé par tous les bloqueurs de publicités populaires et les listes de règles. Le format étendu se compose de trois nouvelles options qui seront détaillées ci-dessous.
Cette implémentation a été choisie car elle nous permet de réutiliser la plupart des fonctionnalités du bloqueur de publicités pour atteindre efficacement l’objectif d’attribution des publicités tout en nous permettant d’utiliser le mécanisme de mise à jour automatique fourni avec les listes de règles des bloqueurs de publicités. Cela nous permet ft corriger rapidement toute erreur.
Comment ça marche
S’assurer que l’attribution des publicités fonctionne est une tâche complexe qui nécessite plusieurs étapes pour être accomplie. En général, l’accent est mis sur le site qui utilise des publicités pour son financement, cependant, la plupart du travail est effectué après avoir cliqué sur une publicité donnée. Dans le cadre de la mise en œuvre, nous passons par les étapes suivantes.
1. Détection des clics sur les publicités
Afin de détecter les clics sur les publicités, nous avons ajouté le paramètre de règle ad-match-for.
Elles ressemblent à quelque chose comme ça :
@@||advertiser.example.com/ad-url$ad-match-for=supported-site.com|other.supported-site.com
Ces règles correspondent dans deux cas de figure. La première se produit lors de la navigation depuis un site Web en cliquant sur un lien. Dans cette situation, le domaine du site Web laissé par l’utilisateur est comparé au paramètre ad-match-for. Pendant ce temps, le corps de la règle est comparé à l’URL réelle à laquelle l’utilisateur est envoyé. Si les deux correspondent, nous considérons qu’il s’agit d’un clic publicitaire qui peut potentiellement déclencher l’attribution d’une annonce.
De plus, lorsque cette règle correspond, toutes les redirections suivantes sont exemptées du blocage des documents par le bloqueur de publicités, car cela empêcherait le chargement de la publicité. En raison de cette propriété, nous utilisons parfois également ces règles uniquement pour désactiver le blocage des documents, sans autoriser le suivi d’attribution. Nous le faisons principalement pour le Direct Match et les signets partenaires.
L’autre cas se produit lors du chargement d’un lien qui déclenche une redirection. Dans ce cas, le domaine du lien initialement demandé est comparé au paramètre ad-match-for. Le corps de la règle est comparé à la première redirection. Cela permet une meilleure détection de certains clics publicitaires.
2. Détection des pages de destination des publicités
Dès qu’un ad-match-for est déclenché, le domaine de l’URL correspondante est conservé pour l’étape suivante. Ce domaine est ensuite utilisé pour correspondre à un autre type de paramètre que nous avons introduit nommé ad-landing-for. Les règles avec ce paramètre ressemblent à ceci :
@@||/[&=]tracking-parameter=/$ad-landing-for=advertiser.example.com/identifier
La partie gauche de ces règles est comparée à chaque URL de la chaîne de redirection après avoir appuyé sur une règle ad-match-for dont le paramètre correspond au domaine du clic publicitaire. Lorsque le corps de la règle et le paramètre ad-landing-for correspondent, l’attribution de la publicité est active et la partie identifiant du paramètre correspondant est stockée pour une utilisation ultérieure.
3. Autorisation des traqueurs
Lorsque l’attribution des publicités est activée, il examine les ressources chargées sur les pages dont l’origine correspond à l’origine de la destination. Afin d’indiquer quelles ressources doivent être autorisées pour l’attribution des publicités, des règles avec l’option ad-attribution-tracker sont utilisées.
@@||advertiser.example.org/track-click$ad-attribution-tracker=identifier1|identifier2
Le corps de cette règle correspond à l’URL de la ressource elle-même, tandis que la valeur de l’option ad-attribution-tracker correspond à tout identifiant stocké par des règles correspondant à ad-landing-for. Lorsqu’un traqueur est autorisé de cette façon, il contourne le blocage dans le bloqueur de publicités.
Ces règles ne sont actuellement utilisées que si la liste « Autoriser les publicités de nos partenaires » fournie par Vivaldi est activée. C’est pour éviter des situations où elles pourraient être utilisées dans des listes de règles malveillantes. Vous pouvez consulter notre liste pour savoir quels sites partenaires ont l’attribution publicitaire activée et quels traqueurs sont autorisés en conséquence ici.
Lorsque cela se produit, la mise en œuvre de l’attribution des publicités enregistre qu’elle doit rechercher des clics sur les publicités. Nous disons qu’elle est activée.
L’attribution des publicités est normalement activée sur tout site où le bloqueur de publicités est désactivé, quel que soit l’état du bloqueur de traqueurs. L’attribution de publicité par amorçage signifie que nous vérifierons si la prochaine navigation est un clic sur une publicité. Elle n’a pas d’autres effets.
Afin de pouvoir prendre en charge l’attribution des publicités pour nos moteurs de recherche partenaires même lorsque le blocage des publicités est activé pour tous les sites, nous avons introduit l’option de règle attribute-ads :
@@||partner-site.example.com/page-i-want-to-Support$attribute-ads
Cela déclenche l’attribution des publicités sur la page correspondante, quel que soit le statut du bloqueur de publicités. En pratique, nous devrions également ajouter une option document (identique aux règles d’autorisation de documents prises en charge par AdBlockPlus), afin de permettre au site partenaire d’afficher des publicités :
@@||partner-site.example.com/page-i-want-to-Support$attribute-ads,document
5. Correspondance d’une publicité lorsque l’attribution de la publicité est amorcée.
Lorsque cela se produit, la mise en œuvre de l’attribution des publicités examinera l’URL chargée ainsi que les URL de toutes les redirections qui se produisent lors du chargement.
Si aucune de ces URL ne correspond à une publicité connue, alors l’attribution des publicités reste désactivée. Elle peut être réactivée si le site où l’utilisateur se retrouve est un site que l’utilisateur souhaite soutenir.
Si l’URL correspond à une publicité connue, l’attribution de la publicité passe à l’étape suivante et le processus continue.
L’option ad-query-trigger est utilisée pour indiquer qu’une règle doit être utilisée pour correspondre aux URL des publicités :
||advertiser.example.com/ad-URL$ad-query-trigger=&click-id-param=|&other-click-id-param=
L’option ad-query-trigger prend une valeur composée de plusieurs fragments de chaîne de requête, séparés par |.
Une fois qu’un document correspondant au modèle pour une règle ad-query-trigger est atteint, directement ou via une redirection, d’autres redirections sont examinées. Pour ces redirections, la chaîne de requête de l’URL est examinée. Si elle contient l’une des chaînes fournies comme valeur pour l’option, l’attribution publicitaire est entièrement activée et l’origine de l’URL correspondante est enregistrée comme origine de la page de destination de la publicité pour cet onglet.
L’option ad-query-trigger nécessite un modèle qui fournit un nom de domaine dans le modèle d’URL de la publicité. Cela signifie que le modèle doit être ancré à l’hôte et que le domaine doit être suivi de ^, / ou ?
Une fois l’attribution des publicités est activée pour un onglet et une origine spécifiques, cet état est conservé tant que l’onglet navigue au sein de cette même origine. Naviguer vers une origine différente désactivera l’attribution des publicités, mais son état sera conservé pendant une demi-heure. D’autres navigations dans ce délai le prolongent d’une demi-heure. Si la date limite est dépassée, d’autres navigations en dehors de l’origine initiale réinitialisent complètement l’état. Revenir à l’origine de la page d’accueil réactive l’attribution des publicités.
L’état d’attribution des publicités est normalement limité à l’onglet où elle a été activée. Cependant, une navigation de même origine vers un nouvel onglet à partir d’un onglet où elle est activée conservera son état.
L’attribution des publicités est également toujours désactivée sept jours après avoir été déclenchée.
6. Correspondance du traqueur lorsque l’attribution de la publicité est activée.
Lorsque l’attribution des publicités est activée, elle examine les ressources chargées sur les pages dont l’origine correspond à l’origine de la destination. Pour indiquer quelles ressources doivent être autorisées pour l’attribution des publicités, des règles avec l’option ad-attribution-tracker sont utilisées.
@@||advertiser.example.org/track-click$ad-attribution-tracker=advertiser.example.com/&click-id-param=|advertiser.example.net/&ad_id=
Le corps de cette règle correspond à l’URL de la ressource elle-même, tandis que la valeur de l’option ad-attribution-tracker fournit le contexte dans lequel elle doit être autorisée. La valeur de cette option consiste en des paires de domaine/fragment de requête séparées par |. La partie domaine est comparée au domaine de la publicité qui a été cliqué (la publicité elle-même, pas son origine de destination). Le fragment de requête est comparé au fragment de requête utilisé pour activer l’attribution des publicités. Une paire correspond si les deux composants correspondent. Cette règle correspond si l’URL de la ressource correspond et si l’une des paires domaine/fragment de requête correspond. Lorsqu’un traqueur est autorisé de cette manière, il contourne le blocage à la fois dans le bloqueur de publicités et dans le bloqueur de traqueurs.
Ces règles sont actuellement uniquement disponibles dans la liste « Autoriser les publicités de nos partenaires » fournie par Vivaldi. C’est pour éviter des situations où elles pourraient être utilisées dans des listes de règles malveillantes. Vous pouvez consulter notre liste pour savoir quels sites partenaires ont l’attribution publicitaire activée et quels traqueurs sont autorisés en conséquence ici.