Google déclare avoir commencé à demander aux utilisateurs d'activer JavaScript, le langage de programmation largement utilisé pour rendre les pages web interactives, afin d'utiliser Google Search.
Dans un courriel, un porte-parole de l'entreprise a déclaré que ce changement visait à « mieux protéger » Google Search contre les activités malveillantes, telles que les robots et le spam, et à améliorer l'expérience globale de Google Search pour les utilisateurs. Le porte-parole a fait remarquer que, sans JavaScript, de nombreuses fonctionnalités de Google Search ne marchent pas correctement et que la qualité des résultats de recherche tend à se dégrader.
« L'activation de JavaScript nous permet de mieux protéger nos services et nos utilisateurs contre les robots et les formes évolutives d'abus et de spam », a déclaré le porte-parole, « et de fournir les informations les plus pertinentes et les plus récentes ».
De nombreux sites web importants s'appuient sur JavaScript. Selon une étude de GitHub réalisée en 2020, 95 % des sites du web utilisent ce langage sous une forme ou une autre. Mais comme le soulignent les utilisateurs sur les médias sociaux, la décision de Google de l'exiger pourrait ajouter des frictions pour ceux qui dépendent des outils d'accessibilité, qui peuvent avoir des difficultés avec certaines implémentations de JavaScript.
Environ 95 % des sites web dans le monde utilisent JavaScript. JavaScript est de loin le langage le plus utilisé selon le rapport Octoverse 2020 de Github.
JavaScript est un langage de programmation côté client qui aide les développeurs web à créer ou à développer des applications web et à créer des pages web dynamiques et interactives en mettant en œuvre des scripts personnalisés côté client. Il existe de nombreux frameworks JavaScript sur le marché. Les frameworks fournissent des blocs de construction sous la forme d'un code pré-écrit. Au lieu de tout écrire à partir de zéro, nous pouvons simplement utiliser un framework et consacrer du temps à un autre défi sérieux. AngularJS, ReactJS, NodeJS, jQuery, Meteor, Express.js, Vue.js, Backbone.js, etc. sont quelques-uns des frameworks disponibles. En utilisant ces frameworks, nous pouvons réduire le temps et les efforts nécessaires au développement de sites et d'applications basés sur JS.
JavaScript est un langage de programmation côté client qui aide les développeurs web à créer ou à développer des applications web et à créer des pages web dynamiques et interactives en mettant en œuvre des scripts personnalisés côté client. Il existe de nombreux frameworks JavaScript sur le marché. Les frameworks fournissent des blocs de construction sous la forme d'un code pré-écrit. Au lieu de tout écrire à partir de zéro, nous pouvons simplement utiliser un framework et consacrer du temps à un autre défi sérieux. AngularJS, ReactJS, NodeJS, jQuery, Meteor, Express.js, Vue.js, Backbone.js, etc. sont quelques-uns des frameworks disponibles. En utilisant ces frameworks, nous pouvons réduire le temps et les efforts nécessaires au développement de sites et d'applications basés sur JS.
Avertissement de Google Search concernant JavaScript
JavaScript est également sujet à des failles de sécurité
Dans son enquête annuelle sur la sécurité 2024, l'entreprise technologique Datadog a constaté qu'environ 70 % des services JavaScript sont vulnérables à une ou plusieurs vulnérabilités « critiques » ou « de haute sévérité » introduites par une bibliothèque logicielle tierce.
Le porte-parole de Google a déclaré qu'en moyenne, « moins de 0,1 % » des recherches sur Google sont effectuées par des personnes qui désactivent JavaScript. Ce n'est pas un chiffre négligeable à l'échelle de Google. Google traite environ 8,5 milliards de recherches par jour, on peut donc supposer que des millions de personnes effectuant des recherches sur Google n'utilisent pas JavaScript.
L'une des motivations de Google est peut-être d'empêcher l'utilisation d'outils tiers qui permettent d'obtenir des informations sur les tendances et le trafic de la recherche Google. Un certain nombre d'outils de « vérification du classement » (des outils qui indiquent les performances des sites web dans les moteurs de recherche) ont commencé à rencontrer des problèmes avec Google Search à peu près au moment où l'exigence de JavaScript de Google est entrée en vigueur.
Tomek Rudzki de Ziptie, qui effectue une surveillance avancée des AI Overview (AIO) de Google, a constaté une baisse des AI Overview : « Nous avons observé une diminution (environ 2 points de pourcentage) dans les taux de détection AIO à travers le système de suivi de Ziptie. Il semble que Google bloque les vérificateurs d'AIO d'une manière intelligente, bien au-delà des captchas traditionnels ».
Ce à quoi Glenn Gabe, Consultant SEO chez G-Squared Interactive, spécialisé dans la récupération des mises à jour de l'algorithme de Google, les audits techniques SEO et la formation SEO, a répondu : « Le suivi des AIO est difficile, surtout quand Google commence à bloquer les traqueurs. Il semble que ce soit le cas avec Ziptie (et peut-être d'autres outils) comme l'explique Tomek. J'ai remarqué une baisse assez importante de la prévalence de l'AIO via Ziptie, et après avoir examiné la question, Tomek pense que c'est du côté de Google (qui bloque partiellement le suivi). Il faut donc garder cela à l'esprit lorsque l'on revoit son suivi des OAA (et peut-être d'autres outils) ».We've observed a decrease (approximately 2 percentage points) in AIO detection rates through Ziptie's tracking system. It seems Google is blocking AIO checkers in a smart way, far beyond traditional captchas. We are looking for ways to improve the AIO detection rate.
— Tomek Rudzki (@TomekRudzki) January 16, 2025
Traitement de JavaScriptAIO tracking is tough, especially when Google starts blocking trackers. Seems that could be the case with Ziptie (and possibly other tools) as Tomek explains. I noticed a pretty big drop in AIO prevalence via Ziptie, and after looking into it, Tomek believes it's on Google's end… https://t.co/eGRExLVPSQ
— Glenn Gabe (@glenngabe) January 16, 2025
Google traite les applications Web JavaScript en trois phases principales :
- Exploration
- Affichage
- Indexation
Googlebot met les pages en file d'attente pour l'exploration et l'affichage. Il n'est pas évident de déterminer immédiatement si une page est en attente d'exploration ou d'affichage.
Lorsque Googlebot extrait une URL de la file d'attente d'exploration via une requête HTTP, il vérifie d'abord si vous en autorisez l'exploration. Googlebot lit alors le fichier robots.txt. Si l'URL est marquée comme non autorisée, Googlebot n'envoie pas la requête HTTP pour cette URL et ignore cette dernière.
Googlebot analyse ensuite la réponse pour les autres URL dans l'attribut href des liens HTML, puis ajoute les URL à la file d'attente d'exploration. Pour empêcher la découverte de liens, utilisez le mécanisme nofollow.
L'exploration d'une URL et l'analyse de la réponse HTML conviennent particulièrement aux sites Web classiques ou aux pages affichées côté serveur dans lesquelles le code HTML de la réponse HTTP inclut tout le contenu. Certains sites JavaScript utilisent le modèle "shell d'application". Dans ce cas, le code HTML initial ne comporte pas le contenu réel, et Google doit exécuter JavaScript avant de pouvoir lire le contenu de la page générée par JavaScript.
Googlebot met toutes les pages en file d'attente pour l'affichage, sauf si un en-tête ou une balise meta robots indique à Google de ne pas indexer la page. La page peut rester dans cette file d'attente pendant quelques secondes ou pendant plus de temps. Une fois que les ressources de Google le permettent, l'environnement Chromium sans interface graphique affiche la page et exécute le code JavaScript. Googlebot recherche à nouveau les liens dans le code HTML affiché, puis met les URL en file d'attente pour l'exploration. Google utilise également le code HTML affiché pour indexer la page.
Gardez à l'esprit que l'affichage côté serveur ou le pré-affichage est recommandé, car il permet aux utilisateurs et aux robots d'exploration d'accéder à votre site plus rapidement. De plus, tous les robots n'utilisent pas forcément JavaScript.
Sources : Mozilla, les bases du SEO JavaScript
Et vous ?
Quels ajustements les développeurs devront-ils apporter pour garantir une compatibilité optimale avec le moteur de recherche de Google ?
Y a-t-il des défis posés par cette exigence ? Quels sont-ils ?
Ce changement risque-t-il de marginaliser davantage les utilisateurs ayant des navigateurs limités ou des connexions lentes ?
Google devrait-il proposer des alternatives ou des outils pour aider les sites statiques à rester compétitifs dans les résultats de recherche ?