Skip to content

Devenir plus productif en SEO avec les bookmarklets (la technique ultime pour automatiser ton SEO)

Tu souhaites réduire les tùches répétitives et automatiser ton SEO ?

Je vais t’apprendre Ă  le faire aujourd’hui avec les bookmarklets.

Les bookmarklet, ce sont des petits bouts de code facile Ă  utiliser qui vont vous permettre d’accĂ©lĂ©rer votre productivitĂ© SEO.

Le plan de l’article est trĂšs simple : je vais vous rappeler ce qu’est un bookmarklet et je vous montrerai ensuite quelles sont les meilleures bookmarklet Ă  utiliser.

C’est quoi un bookmarklet ?

Un bookmark (ou favori) est une URL enregistrĂ©e dans les paramĂštres de votre navigateur, pour vous aider Ă   la retrouver quand vous en avez besoin.

Un bookmarklet est Ă©galement un bookmark, mais constituĂ© d’un code Javascript plutĂŽt que d’une URL et ce bout de code te permet d’automatiser certaines taches seo qui sont repetitives.

On va pouvoir à titre d’exemple lancer :

  • Une analyse de mots-clĂ©s sur semrush
  • La commande site:
  • Trouver des backlinks
  • Lancer page speed insight en un clic

De toute façon je vous reparle de tout cela dans la derniĂšre partie de la vidĂ©o oĂč je vais vous donner mes meilleurs bookmarklet que j’utilise rĂ©guliĂšrement.

Comment installer les Bookmarklets ?

J’ai fait une petite vidĂ©o sur le sujet sur Youtube 😉

Pour les installer il suffit d’ajouter un favori sur chrome ou sur votre navigateur et au lieu de mettre une url il faut mettre un bout de code javascript. Je vais vous montrer en dĂ©tail comment faire.

Ajouter un favori sur chrome

Puis il suffit de rajouter le code Ă  l’outil Bookmarklet :

Installer un bookmarklet pour le SEO

Les meilleurs Bookmarklet

Lancer la commande site

Petit principe tout simple dÚs que je fais un mini audit SEO pour préparer un appel avec un client par exemple je vais sur Google et je lance la commande site:

Cette commande elle te permet de découvrir le nombre de pages indexées de ton site.

Au lieu de taper à chaque fois site:, le bookmarklet me permet de le faire d’office c’est particuliùrement pratique.

javascript:(function()%7bwindow.open('https://www.google.fr/search?q=site:%27+location.protocol+%27//%27+location.hostname.replace(%27www.%27,%27%27), %27_newtab%27);%7d());

Lancer Page speed insights

Cela te permet de lancer l’analyse Page speed insights depuis n’importe quel site. Pour info tu dois ĂȘtre sur le site sur lequel tu souhaites avoir le rĂ©sultat pour lancer la commande.

javascript:(function(){window.open('<https://developers.google.com/speed/pagespeed/insights/?url=%27+encodeURIComponent(location.href)>, %27_newtab%27);}());

Lancer une analyse Gtmetrix

Cela te permet de lancer l’analyse Page speed insights depuis n’importe quel site. Pour info tu dois ĂȘtre sur le site sur lequel tu souhaites avoir le rĂ©sultat pour lancer la commande.

javascript:(function(d)%7Bvar f%3Dd.createElement(%27form%27)%3Bf.action%3D%27https://gtmetrix.com/analyze.html%3Fbm%27%3Bf.method%3D%27post%27%3Bvar i%3Dd.createElement(%27input%27)%3Bi.type%3D%27hidden%27%3Bi.name%3D%27url%27%3Bi.value%3Ddocument.location.href%3Bf.appendChild(i)%3Bd.body.appendChild(f)%3Bf.submit()%3B%7D)(document)%3B

RĂ©cupĂ©rer toutes les urls et les liens sortants d’une page

Tu as compris : il faut ĂȘtre sur la page pour avoir le rĂ©sultat.

javascript:(function()%7Bfunction getParameterByName(e%2Ct)%7Be%3De.replace(%2F%5B%5C%5B%5D%2F%2C"%5C%5C%5B").replace(%2F%5B%5C%5D%5D%2F%2C"%5C%5C%5D")%3Bvar n%3Dnew RegExp("%5B%5C%5C%3F%26%5D"%2Be%2B"%3D(%5B%5E%26%23%5D*)")%2Cr%3Dn.exec(t%3D%3Dtrue%3Flocation.hash.replace("%23"%2C"%3F")%3Alocation.search)%3Bif(r%3D%3Dnull%26%26t%3D%3Dfalse)%7Breturn getParameterByName(e%2Ctrue)%7Delse%7Breturn r%3D%3Dnull%3F""%3AdecodeURIComponent(r%5B1%5D.replace(%2F%5C%2B%2Fg%2C" "))%7D%7Dstr%3D"<style type%3D%27text%2Fcss%27>body%7Bcolor%3A%23000%3Bbackground-color%3A%23fff%3Bmargin%3A0%3Bpadding%3A0%3Bfont-family%3Aarial%2Chelvetica%2Csans-serif%3Bfont-size%3A82%25%7D*%7Bfont-weight%3A400%3Bcolor%3A%23000%7Dh2%2Ch4%2Ch5%2Ch6%7Bmargin%3A0 0 15px%3Bpadding%3A0%7D%23rt%7Bfont-size%3A12px%3Bwidth%3A500px%7Dtable%2Ctd%2Cth%2Ctr%7Bfont-size%3A1em%3Boverflow%3Ahidden%3Btext-overflow%3Aellipsis%3Bword-wrap%3Abreak-word%7Dtextarea%7Bwidth%3A100%25%7Dth%7Bbackground-color%3A%23eee%3Bcolor%3A%23000%3Bfont-weight%3A700%7Dtd a%7Bwidth%3A446px%3Bdisplay%3Ablock%7D.id%7Bbackground%3A%23eee%3Bcolor%3A%23000%3Btext-align%3Acenter%7D.g%7Bfont-family%3Aarial%2Csans-serif%3Bcolor%3A%23000%3Bmargin%3A1em 0%3Bfont-size%3A122%25%7D.g h2%7Bfont-family%3Aarial%2Csans-serif%3Bmargin%3A0%7D.r%7Bdisplay%3Ainline%3Bfont-weight%3A400%3Bmargin%3A10%7D.j%7Bwidth%3A34em%7D.std%7Bfont-size%3A82%25%7D.a%7Bcolor%3Agreen%7D.fl%7Bcolor%3A%2377c%7D.bl%7Bdisplay%3Ainline%7Da%7Bcolor%3A%2300c%7Da%3Avisited%7Bcolor%3A%23551a8b%7Da%3Aactive%7Bcolor%3Ared%7D.twitter-share-button%7Bmargin-bottom%3A-5px%7Dp.b%7Bline-height%3A22px%3Btext-align%3Acenter%7D<%2Fstyle>%5Cn"%3Banchors%3Ddocument.getElementsByTagName("a")%3Bvar all%3D%5B%5D%3Bvar keyword%3DgetParameterByName("q"%2Cfalse)%3Bstr%2B%3D"<title>Google SERP Scraper Bookmarklet<%2Ftitle>"%3Bstr%2B%3D"<div style%3D%27width%3A 900px%3B margin%3A 0 auto%3B%27>"%3Bstr%2B%3D"<h1 style%3D%27margin%3A 1em 0em 0em 0em%3B text-align%3A center%3B%27>Google SERP Scraper Bookmarklet<%2Fh1>"%3Bstr%2B%3D"<h2 style%3D%27text-align%3A center%3B%27>Keyword - "%2Bkeyword%2B"<%2Fh2>"%3Bstr%2B%3D"<table width%3D%27100%25%27>"%3Bstr%2B%3D"<tr><th width%3D%275%25%27>Result<%2Fth><th width%3D%2750%25%27>Link<%2Fth><th width%3D%2745%25%27>Anchor Text<%2Fth><%2Ftr>%5Cn"%3Bvar tweetText%3D%27<p class%3D"b">If you use and like this%2C please <a href%3D"https%3A%2F%2Ftwitter.com%2Fshare" class%3D"twitter-share-button" data-count%3D"none" data-lang%3D"en" data-url%3D"http%3A%2F%2Fcognitiveseo.com%2Fblog%2F5714%2F69-amazing-seo-bookmarklets-to-supercharge-your-internet-marketing%2F" data-text%3D"%2F*Google SERP Scraper*%2F Bookmarklet %2B 68 Other Uber Amazing Bookmarklets">Tweet<%2Fa> about it and help us spread the word.<br %2F> Happy SCRAPing and thanks for sharing!<br %2F> Coded by <a href%3D"http%3A%2F%2Fcognitiveseo.com%2F" target%3D"_blank">cognitiveSEO<%2Fa>.<%2Fp>%27%3Bvar tweetScript%3D%27<script>!function(d%2Cs%2Cid)%7Bvar js%2Cfjs%3Dd.getElementsByTagName(s)%5B0%5D%3Bif(!d.getElementById(id))%7Bjs%3Dd.createElement(s)%3Bjs.id%3Did%3Bjs.src%3D"https%3A%2F%2Fplatform.twitter.com%2Fwidgets.js"%3Bfjs.parentNode.insertBefore(js%2Cfjs)%3B%7D%7D(document%2C"script"%2C"twitter-wjs")%3B<%2Fscript>%27%3Bvar k%3D0%3Bvar listing%3D""%3Bvar links%3D""%3Bvar anchorTexts%3D""%3Bvar linksAnchors%3D""%3Bfor(i%3D0%3Bi<anchors.length%3Bi%2B%2B)%7Bvar anchorText%3Danchors%5Bi%5D.textContent%3Bvar anchorLink%3Danchors%5Bi%5D.href%3Bvar linkAnchor%3D""%3Bif(anchorLink.match(%2F%5E((%3F!google%5C.%7Ccache%7C%5C.yahoo%5C.%7Cyoutube%5C.com%5C%2Fresults%7Cjavascript%3A%7B%7D%7Cjavascript%3Avoid%7Cjavascript%3A%5C%3B%7Capi%5C.technorati%5C.com%7Cbotw%5C.org%5C%2Fsearch%7Cdel%5C.icio%5C.us%5C%2Furl%5C%2Fcheck%7Cdigg%5C.com%5C%2Fsearch%7Csearch%5C.twitter%5C.com%5C%2Fsearch%7Csearch%5C.yahoo%5C.com%5C%2Fsearch%7Csiteanalytics%5C.compete%5C.com%7Ctools%5C.seobook%5C.com%5C%2Fgeneral%5C%2Fkeyword%5C%2Fsuggestions%7Cweb%5C.archive%5C.org%5C%2Fweb%5C%2F%7Cwhois%5C.domaintools%5C.com%7Cwww%5C.alexa%5C.com%5C%2Fdata%5C%2Fdetails%5C%2Fmain%7Cwww%5C.bloglines%5C.com%5C%2Fsearch%7Cwww%5C.majesticseo%5C.com%5C%2Fsearch%5C.php%7Cwww%5C.Semrush%5C.com%5C%2Finfo%5C%2F%7Cwww%5C.Semrush%5C.com%5C%2Fsearch%5C.php%7Cwww%5C.stumbleupon%5C.com%5C%2Furl%7Cwikipedia.org%5C%2Fwiki%5C%2FSpecial%3ASearch).)*%24%2Fi)%26%26anchorLink!%3D""%26%26all.indexOf(anchorLink)%3D%3D-1%26%26anchorText!%3D""%26%26anchors%5Bi%5D.className!%3D"gb_b")%7Ball.push(anchorLink)%3Blisting%2B%3DanchorLink%2B"%5Cn"%3BanchorTexts%2B%3DanchorText%2B"%5Cn"%3BlinkAnchor%3DanchorLink.replace("%2C"%2C"%252C")%2B"%2C%09"%2BanchorText.replace("%2C"%2C"")%3BlinksAnchors%2B%3DlinkAnchor%2B"%5Cn"%3Bk%3Dk%2B1%3Bif(anchorText%3D%3D%3Dundefined)anchorText%3Danchors%5Bi%5D.innerText%3Bstr%2B%3D"<tr>"%3Bstr%2B%3D"<td class%3D%27id%27>"%2Bk%2B"<%2Ftd>"%3Bstr%2B%3D"<td><a href%3D"%2Banchors%5Bi%5D.href%2B" target%3D%27_blank%27>"%2Banchors%5Bi%5D.href%2B"<%2Fa><%2Ftd>"%3Bstr%2B%3D"<td>"%2BanchorText%2B"<%2Ftd>"%3Bstr%2B%3D"<%2Ftr>%5Cn"%7D%7Dstr%2B%3D"<%2Ftable><br%2F><br%2F><table width%3D%27100%25%27><tr><td width%3D%2755%25%27><h2>Links<%2Fh2><textarea rows%3D10 style%3D%27width%3A97%25%27 readonly>"%3Bstr%2B%3Dlisting%3Bstr%2B%3D"<%2Ftextarea><%2Ftd><td width%3D%2745%25%27><h2>Anchors<%2Fh2><textarea rows%3D10 readonly>"%3Bstr%2B%3DanchorTexts%3Bstr%2B%3D"<%2Ftextarea><%2Ftd><%2Ftr><%2Ftable><br%2F><br%2F><h2>All Data - CSV<%2Fh2><textarea rows%3D10 readonly>"%3Bstr%2B%3D"Links%2C Anchors%5Cn"%3Bstr%2B%3DlinksAnchors%3Bstr%2B%3D"<%2Ftextarea><br %2F> <br %2F>"%3Bstr%2B%3DtweetText%3Bstr%2B%3DtweetScript%3Bstr%2B%3D"<br %2F><%2Fdiv> <br %2F>"%3Bwith(window.open())%7Bdocument.write(str)%3Bdocument.close()%7D%7D)()

Voir les balises alt manquantes d’une page

Tu as compris : il faut ĂȘtre sur la page pour avoir le rĂ©sultat.

javascript:(function()%7bfunction toArray (c)%7bvar a, k;a=new Array;for (k=0; k < c.length; ++k)a[k]=c[k];return a;%7dvar images, img, altText;images=toArray(document.images);for (var i=0; i < images.length; ++i)%7bimg=images[i];altText=document.createTextNode(img.alt);img.parentNode.replaceChild(altText, img)%7d%7d)();

Lancer l’analyse Semrush d’un site (dispo en gratuit)

Tu as compris : il faut ĂȘtre sur la page pour avoir le rĂ©sultat. Pense Ă  te connecter sur semrush aussi

javascript:(function(){ window.open('<https://www.semrush.com/info/'+location.hostname>)})();

Lancer l’analyse Ahrefs d’un site

Tu as compris : il faut ĂȘtre sur la page pour avoir le rĂ©sultat. Pense Ă  te connecter sur ahrefs aussi

javascript:(function(){ window.open('<https://app.ahrefs.com/site-explorer/overview/v2/subdomains/live?target='+location.host>)})();

Obtenir les donnĂ©es Similar Web d’un site

javascript:window.open('<https://similarweb.com/website/'+window.location.host>);

Trouver la donnĂ©e d’un mot-clĂ© avec Mangools

Pour info une fenĂȘtre s’ouvrira pour mettre votre mot-clĂ©.

javascript:(function()%7Bfunction getParameterByName(e%2Ct)%7Be%3De.replace(%2F%5B%5C%5B%5D%2F%2C"%5C%5C%5B").replace(%2F%5B%5C%5D%5D%2F%2C"%5C%5C%5D")%3Bvar n%3Dnew RegExp("%5B%5C%5C%3F%26%5D"%2Be%2B"%3D(%5B%5E%26%23%5D*)")%2Cr%3Dn.exec(t%3D%3Dtrue%3Flocation.hash.replace("%23"%2C"%3F")%3Alocation.search)%3Bif(r%3D%3Dnull%26%26t%3D%3Dfalse)%7Breturn getParameterByName(e%2Ctrue)%7Delse%7Breturn r%3D%3Dnull%3F""%3AdecodeURIComponent(r%5B1%5D.replace(%2F%5C%2B%2Fg%2C" "))%7D%7Dstr%3D"<style type%3D%27text%2Fcss%27>body%7Bcolor%3A%23000%3Bbackground-color%3A%23fff%3Bmargin%3A0%3Bpadding%3A0%3Bfont-family%3Aarial%2Chelvetica%2Csans-serif%3Bfont-size%3A82%25%7D*%7Bfont-weight%3A400%3Bcolor%3A%23000%7Dh2%2Ch4%2Ch5%2Ch6%7Bmargin%3A0 0 15px%3Bpadding%3A0%7D%23rt%7Bfont-size%3A12px%3Bwidth%3A500px%7Dtable%2Ctd%2Cth%2Ctr%7Bfont-size%3A1em%3Boverflow%3Ahidden%3Btext-overflow%3Aellipsis%3Bword-wrap%3Abreak-word%7Dtextarea%7Bwidth%3A100%25%7Dth%7Bbackground-color%3A%23eee%3Bcolor%3A%23000%3Bfont-weight%3A700%7Dtd a%7Bwidth%3A446px%3Bdisplay%3Ablock%7D.id%7Bbackground%3A%23eee%3Bcolor%3A%23000%3Btext-align%3Acenter%7D.g%7Bfont-family%3Aarial%2Csans-serif%3Bcolor%3A%23000%3Bmargin%3A1em 0%3Bfont-size%3A122%25%7D.g h2%7Bfont-family%3Aarial%2Csans-serif%3Bmargin%3A0%7D.r%7Bdisplay%3Ainline%3Bfont-weight%3A400%3Bmargin%3A10%7D.j%7Bwidth%3A34em%7D.std%7Bfont-size%3A82%25%7D.a%7Bcolor%3Agreen%7D.fl%7Bcolor%3A%2377c%7D.bl%7Bdisplay%3Ainline%7Da%7Bcolor%3A%2300c%7Da%3Avisited%7Bcolor%3A%23551a8b%7Da%3Aactive%7Bcolor%3Ared%7D.twitter-share-button%7Bmargin-bottom%3A-5px%7Dp.b%7Bline-height%3A22px%3Btext-align%3Acenter%7D<%2Fstyle>%5Cn"%3Banchors%3Ddocument.getElementsByTagName("a")%3Bvar all%3D%5B%5D%3Bvar keyword%3DgetParameterByName("q"%2Cfalse)%3Bstr%2B%3D"<title>Google SERP Scraper Bookmarklet<%2Ftitle>"%3Bstr%2B%3D"<div style%3D%27width%3A 900px%3B margin%3A 0 auto%3B%27>"%3Bstr%2B%3D"<h1 style%3D%27margin%3A 1em 0em 0em 0em%3B text-align%3A center%3B%27>Google SERP Scraper Bookmarklet<%2Fh1>"%3Bstr%2B%3D"<h2 style%3D%27text-align%3A center%3B%27>Keyword - "%2Bkeyword%2B"<%2Fh2>"%3Bstr%2B%3D"<table width%3D%27100%25%27>"%3Bstr%2B%3D"<tr><th width%3D%275%25%27>Result<%2Fth><th width%3D%2750%25%27>Link<%2Fth><th width%3D%2745%25%27>Anchor Text<%2Fth><%2Ftr>%5Cn"%3Bvar tweetText%3D%27<p class%3D"b">If you use and like this%2C please <a href%3D"https%3A%2F%2Ftwitter.com%2Fshare" class%3D"twitter-share-button" data-count%3D"none" data-lang%3D"en" data-url%3D"http%3A%2F%2Fcognitiveseo.com%2Fblog%2F5714%2F69-amazing-seo-bookmarklets-to-supercharge-your-internet-marketing%2F" data-text%3D"%2F*Google SERP Scraper*%2F Bookmarklet %2B 68 Other Uber Amazing Bookmarklets">Tweet<%2Fa> about it and help us spread the word.<br %2F> Happy SCRAPing and thanks for sharing!<br %2F> Coded by <a href%3D"http%3A%2F%2Fcognitiveseo.com%2F" target%3D"_blank">cognitiveSEO<%2Fa>.<%2Fp>%27%3Bvar tweetScript%3D%27<script>!function(d%2Cs%2Cid)%7Bvar js%2Cfjs%3Dd.getElementsByTagName(s)%5B0%5D%3Bif(!d.getElementById(id))%7Bjs%3Dd.createElement(s)%3Bjs.id%3Did%3Bjs.src%3D"https%3A%2F%2Fplatform.twitter.com%2Fwidgets.js"%3Bfjs.parentNode.insertBefore(js%2Cfjs)%3B%7D%7D(document%2C"script"%2C"twitter-wjs")%3B<%2Fscript>%27%3Bvar k%3D0%3Bvar listing%3D""%3Bvar links%3D""%3Bvar anchorTexts%3D""%3Bvar linksAnchors%3D""%3Bfor(i%3D0%3Bi<anchors.length%3Bi%2B%2B)%7Bvar anchorText%3Danchors%5Bi%5D.textContent%3Bvar anchorLink%3Danchors%5Bi%5D.href%3Bvar linkAnchor%3D""%3Bif(anchorLink.match(%2F%5E((%3F!google%5C.%7Ccache%7C%5C.yahoo%5C.%7Cyoutube%5C.com%5C%2Fresults%7Cjavascript%3A%7B%7D%7Cjavascript%3Avoid%7Cjavascript%3A%5C%3B%7Capi%5C.technorati%5C.com%7Cbotw%5C.org%5C%2Fsearch%7Cdel%5C.icio%5C.us%5C%2Furl%5C%2Fcheck%7Cdigg%5C.com%5C%2Fsearch%7Csearch%5C.twitter%5C.com%5C%2Fsearch%7Csearch%5C.yahoo%5C.com%5C%2Fsearch%7Csiteanalytics%5C.compete%5C.com%7Ctools%5C.seobook%5C.com%5C%2Fgeneral%5C%2Fkeyword%5C%2Fsuggestions%7Cweb%5C.archive%5C.org%5C%2Fweb%5C%2F%7Cwhois%5C.domaintools%5C.com%7Cwww%5C.alexa%5C.com%5C%2Fdata%5C%2Fdetails%5C%2Fmain%7Cwww%5C.bloglines%5C.com%5C%2Fsearch%7Cwww%5C.majesticseo%5C.com%5C%2Fsearch%5C.php%7Cwww%5C.Semrush%5C.com%5C%2Finfo%5C%2F%7Cwww%5C.Semrush%5C.com%5C%2Fsearch%5C.php%7Cwww%5C.stumbleupon%5C.com%5C%2Furl%7Cwikipedia.org%5C%2Fwiki%5C%2FSpecial%3ASearch).)*%24%2Fi)%26%26anchorLink!%3D""%26%26all.indexOf(anchorLink)%3D%3D-1%26%26anchorText!%3D""%26%26anchors%5Bi%5D.className!%3D"gb_b")%7Ball.push(anchorLink)%3Blisting%2B%3DanchorLink%2B"%5Cn"%3BanchorTexts%2B%3DanchorText%2B"%5Cn"%3BlinkAnchor%3DanchorLink.replace("%2C"%2C"%252C")%2B"%2C%09"%2BanchorText.replace("%2C"%2C"")%3BlinksAnchors%2B%3DlinkAnchor%2B"%5Cn"%3Bk%3Dk%2B1%3Bif(anchorText%3D%3D%3Dundefined)anchorText%3Danchors%5Bi%5D.innerText%3Bstr%2B%3D"<tr>"%3Bstr%2B%3D"<td class%3D%27id%27>"%2Bk%2B"<%2Ftd>"%3Bstr%2B%3D"<td><a href%3D"%2Banchors%5Bi%5D.href%2B" target%3D%27_blank%27>"%2Banchors%5Bi%5D.href%2B"<%2Fa><%2Ftd>"%3Bstr%2B%3D"<td>"%2BanchorText%2B"<%2Ftd>"%3Bstr%2B%3D"<%2Ftr>%5Cn"%7D%7Dstr%2B%3D"<%2Ftable><br%2F><br%2F><table width%3D%27100%25%27><tr><td width%3D%2755%25%27><h2>Links<%2Fh2><textarea rows%3D10 style%3D%27width%3A97%25%27 readonly>"%3Bstr%2B%3Dlisting%3Bstr%2B%3D"<%2Ftextarea><%2Ftd><td width%3D%2745%25%27><h2>Anchors<%2Fh2><textarea rows%3D10 readonly>"%3Bstr%2B%3DanchorTexts%3Bstr%2B%3D"<%2Ftextarea><%2Ftd><%2Ftr><%2Ftable><br%2F><br%2F><h2>All Data - CSV<%2Fh2><textarea rows%3D10 readonly>"%3Bstr%2B%3D"Links%2C Anchors%5Cn"%3Bstr%2B%3DlinksAnchors%3Bstr%2B%3D"<%2Ftextarea><br %2F> <br %2F>"%3Bstr%2B%3DtweetText%3Bstr%2B%3DtweetScript%3Bstr%2B%3D"<br %2F><%2Fdiv> <br %2F>"%3Bwith(window.open())%7Bdocument.write(str)%3Bdocument.close()%7D%7D)()

Voir les balises alt manquantes d’une page

Tu as compris : il faut ĂȘtre sur la page pour avoir le rĂ©sultat.

javascript:(function()%7bfunction toArray (c)%7bvar a, k;a=new Array;for (k=0; k < c.length; ++k)a[k]=c[k];return a;%7dvar images, img, altText;images=toArray(document.images);for (var i=0; i < images.length; ++i)%7bimg=images[i];altText=document.createTextNode(img.alt);img.parentNode.replaceChild(altText, img)%7d%7d)();

Lancer l’analyse Semrush d’un site (dispo en gratuit)

Tu as compris : il faut ĂȘtre sur la page pour avoir le rĂ©sultat. Pense Ă  te connecter sur semrush aussi

javascript:(function(){ window.open('<https://www.semrush.com/info/'+location.hostname>)})();

Lancer l’analyse Ahrefs d’un site

Tu as compris : il faut ĂȘtre sur la page pour avoir le rĂ©sultat. Pense Ă  te connecter sur ahrefs aussi

javascript:(function(){ window.open('<https://app.ahrefs.com/site-explorer/overview/v2/subdomains/live?target='+location.host>)})();

Obtenir les donnĂ©es Similar Web d’un site

javascript:window.open('<https://similarweb.com/website/'+window.location.host>);

Trouver la donnĂ©e d’un mot-clĂ© avec Mangools

Pour info une fenĂȘtre s’ouvrira pour mettre votre mot-clĂ©.

javascript:(function() {new Promise(setQuery => { var input = window.prompt('Enter your query:');if (input) setQuery(input); }).then(query => {window.open('https://app.mangools.com/kwfinder/dashboard?language_id=1002&location_id=2250&query=%27 + query);window.open(%27https://trends.google.com/trends/explore?q=%27 + query);window.open(%27https://www.wordtracker.com/search?query=%27 + query);});})();

Trouver la donnĂ©e d’un mot-clĂ© avec Semrush

javascript:(function() {new Promise(setQuery => { var input = window.prompt('Enter your query:');if (input) setQuery(input); }).then(query => {window.open('<https://www.semrush.com/analytics/keywordoverview/?q=>' + query +'&db=fr');window.open(%27https://trends.google.com/trends/explore?q=%27 + query);window.open(%27https://www.wordtracker.com/search?query=%27 + query);});})();

Scraper la SERP

Pour info il faut ĂȘtre sur une page de rĂ©sultats Google puis lancer le bookmarklet.

javascript:(function()%7Bfunction getParameterByName(e%2Ct)%7Be%3De.replace(%2F%5B%5C%5B%5D%2F%2C"%5C%5C%5B").replace(%2F%5B%5C%5D%5D%2F%2C"%5C%5C%5D")%3Bvar n%3Dnew RegExp("%5B%5C%5C%3F%26%5D"%2Be%2B"%3D(%5B%5E%26%23%5D*)")%2Cr%3Dn.exec(t%3D%3Dtrue%3Flocation.hash.replace("%23"%2C"%3F")%3Alocation.search)%3Bif(r%3D%3Dnull%26%26t%3D%3Dfalse)%7Breturn getParameterByName(e%2Ctrue)%7Delse%7Breturn r%3D%3Dnull%3F""%3AdecodeURIComponent(r%5B1%5D.replace(%2F%5C%2B%2Fg%2C" "))%7D%7Dstr%3D"<style type%3D%27text%2Fcss%27>body%7Bcolor%3A%23000%3Bbackground-color%3A%23fff%3Bmargin%3A0%3Bpadding%3A0%3Bfont-family%3Aarial%2Chelvetica%2Csans-serif%3Bfont-size%3A82%25%7D*%7Bfont-weight%3A400%3Bcolor%3A%23000%7Dh3%2Ch4%2Ch5%2Ch6%7Bmargin%3A0 0 15px%3Bpadding%3A0%7D%23rt%7Bfont-size%3A12px%3Bwidth%3A500px%7Dtable%2Ctd%2Cth%2Ctr%7Bfont-size%3A1em%3Boverflow%3Ahidden%3Btext-overflow%3Aellipsis%3Bword-wrap%3Abreak-word%7Dtextarea%7Bwidth%3A100%25%7Dth%7Bbackground-color%3A%23eee%3Bcolor%3A%23000%3Bfont-weight%3A700%7Dtd a%7Bwidth%3A446px%3Bdisplay%3Ablock%7D.id%7Bbackground%3A%23eee%3Bcolor%3A%23000%3Btext-align%3Acenter%7D.g%7Bfont-family%3Aarial%2Csans-serif%3Bcolor%3A%23000%3Bmargin%3A1em 0%3Bfont-size%3A122%25%7D.g h2%7Bfont-family%3Aarial%2Csans-serif%3Bmargin%3A0%7D.r%7Bdisplay%3Ainline%3Bfont-weight%3A400%3Bmargin%3A10%7D.j%7Bwidth%3A34em%7D.std%7Bfont-size%3A82%25%7D.a%7Bcolor%3Agreen%7D.fl%7Bcolor%3A%2377c%7D.bl%7Bdisplay%3Ainline%7Da%7Bcolor%3A%2300c%7Da%3Avisited%7Bcolor%3A%23551a8b%7Da%3Aactive%7Bcolor%3Ared%7D.twitter-share-button%7Bmargin-bottom%3A-5px%7Dp.b%7Bline-height%3A22px%3Btext-align%3Acenter%7D<%2Fstyle>%5Cn"%3Banchors%3Ddocument.getElementsByTagName("a")%3Bvar all%3D%5B%5D%3Bvar keyword%3DgetParameterByName("q"%2Cfalse)%3Bstr%2B%3D"<title>Google SERP Scraper Bookmarklet<%2Ftitle>"%3Bstr%2B%3D"<div style%3D%27width%3A 900px%3B margin%3A 0 auto%3B%27>"%3Bstr%2B%3D"<h1 style%3D%27margin%3A 1em 0em 0em 0em%3B text-align%3A center%3B%27>Google SERP Scraper Bookmarklet<%2Fh1>"%3Bstr%2B%3D"<h2 style%3D%27text-align%3A center%3B%27>Keyword - "%2Bkeyword%2B"<%2Fh2>"%3Bstr%2B%3D"<table width%3D%27100%25%27>"%3Bstr%2B%3D"<tr><th width%3D%275%25%27>Result<%2Fth><th width%3D%2750%25%27>Link<%2Fth><th width%3D%2745%25%27>Anchor Text<%2Fth><%2Ftr>%5Cn"%3Bvar tweetText%3D%27<p class%3D"b">If you use and like this%2C please <a href%3D"https%3A%2F%2Ftwitter.com%2Fshare" class%3D"twitter-share-button" data-count%3D"none" data-lang%3D"en" data-url%3D"http%3A%2F%2Fcognitiveseo.com%2Fblog%2F5714%2F69-amazing-seo-bookmarklets-to-supercharge-your-internet-marketing%2F" data-text%3D"%2F*Google SERP Scraper*%2F Bookmarklet %2B 68 Other Uber Amazing Bookmarklets">Tweet<%2Fa> about it and help us spread the word.<br %2F> Happy SCRAPing and thanks for sharing!<br %2F> Coded by <a href%3D"http%3A%2F%2Fcognitiveseo.com%2F" target%3D"_blank">cognitiveSEO<%2Fa>.<%2Fp>%27%3Bvar tweetScript%3D%27<script>!function(d%2Cs%2Cid)%7Bvar js%2Cfjs%3Dd.getElementsByTagName(s)%5B0%5D%3Bif(!d.getElementById(id))%7Bjs%3Dd.createElement(s)%3Bjs.id%3Did%3Bjs.src%3D"https%3A%2F%2Fplatform.twitter.com%2Fwidgets.js"%3Bfjs.parentNode.insertBefore(js%2Cfjs)%3B%7D%7D(document%2C"script"%2C"twitter-wjs")%3B<%2Fscript>%27%3Bvar k%3D0%3Bvar listing%3D""%3Bvar links%3D""%3Bvar anchorTexts%3D""%3Bvar linksAnchors%3D""%3Bfor(i%3D0%3Bi<anchors.length%3Bi%2B%2B)%7Bvar anchorText%3Danchors%5Bi%5D.textContent%3Bvar anchorLink%3Danchors%5Bi%5D.href%3Bvar linkAnchor%3D""%3Bif(anchorLink.match(%2F%5E((%3F!google%5C.%7Ccache%7C%5C.yahoo%5C.%7Cyoutube%5C.com%5C%2Fresults%7Cjavascript%3A%7B%7D%7Cjavascript%3Avoid%7Cjavascript%3A%5C%3B%7Capi%5C.technorati%5C.com%7Cbotw%5C.org%5C%2Fsearch%7Cdel%5C.icio%5C.us%5C%2Furl%5C%2Fcheck%7Cdigg%5C.com%5C%2Fsearch%7Csearch%5C.twitter%5C.com%5C%2Fsearch%7Csearch%5C.yahoo%5C.com%5C%2Fsearch%7Csiteanalytics%5C.compete%5C.com%7Ctools%5C.seobook%5C.com%5C%2Fgeneral%5C%2Fkeyword%5C%2Fsuggestions%7Cweb%5C.archive%5C.org%5C%2Fweb%5C%2F%7Cwhois%5C.domaintools%5C.com%7Cwww%5C.alexa%5C.com%5C%2Fdata%5C%2Fdetails%5C%2Fmain%7Cwww%5C.bloglines%5C.com%5C%2Fsearch%7Cwww%5C.majesticseo%5C.com%5C%2Fsearch%5C.php%7Cwww%5C.semrush%5C.com%5C%2Finfo%5C%2F%7Cwww%5C.semrush%5C.com%5C%2Fsearch%5C.php%7Cwww%5C.stumbleupon%5C.com%5C%2Furl%7Cwikipedia.org%5C%2Fwiki%5C%2FSpecial%3ASearch).)*%24%2Fi)%26%26anchorLink!%3D""%26%26all.indexOf(anchorLink)%3D%3D-1%26%26anchorText!%3D""%26%26anchors%5Bi%5D.className!%3D"gb_b")%7Ball.push(anchorLink)%3Blisting%2B%3DanchorLink%2B"%5Cn"%3BanchorTexts%2B%3DanchorText%2B"%5Cn"%3BlinkAnchor%3DanchorLink.replace("%2C"%2C"%252C")%2B"%2C%09"%2BanchorText.replace("%2C"%2C"")%3BlinksAnchors%2B%3DlinkAnchor%2B"%5Cn"%3Bk%3Dk%2B1%3Bif(anchorText%3D%3D%3Dundefined)anchorText%3Danchors%5Bi%5D.innerText%3Bstr%2B%3D"<tr>"%3Bstr%2B%3D"<td class%3D%27id%27>"%2Bk%2B"<%2Ftd>"%3Bstr%2B%3D"<td><a href%3D"%2Banchors%5Bi%5D.href%2B" target%3D%27_blank%27>"%2Banchors%5Bi%5D.href%2B"<%2Fa><%2Ftd>"%3Bstr%2B%3D"<td>"%2BanchorText%2B"<%2Ftd>"%3Bstr%2B%3D"<%2Ftr>%5Cn"%7D%7Dstr%2B%3D"<%2Ftable><br%2F><br%2F><table width%3D%27100%25%27><tr><td width%3D%2755%25%27><h2>Links<%2Fh2><textarea rows%3D10 style%3D%27width%3A97%25%27 readonly>"%3Bstr%2B%3Dlisting%3Bstr%2B%3D"<%2Ftextarea><%2Ftd><td width%3D%2745%25%27><h2>Anchors<%2Fh2><textarea rows%3D10 readonly>"%3Bstr%2B%3DanchorTexts%3Bstr%2B%3D"<%2Ftextarea><%2Ftd><%2Ftr><%2Ftable><br%2F><br%2F><h2>All Data - CSV<%2Fh2><textarea rows%3D10 readonly>"%3Bstr%2B%3D"Links%2C Anchors%5Cn"%3Bstr%2B%3DlinksAnchors%3Bstr%2B%3D"<%2Ftextarea><br %2F> <br %2F>"%3Bstr%2B%3DtweetText%3Bstr%2B%3DtweetScript%3Bstr%2B%3D"<br %2F><%2Fdiv> <br %2F>"%3Bwith(window.open())%7Bdocument.write(str)%3Bdocument.close()%7D%7D)()

Compter les mots d’une page

javascript:(function()%7Bfunction f(d)%7Bvar t%3Bif(d.getSelection)t%3Dd.getSelection()%3Belse if(d.selection)t%3Dd.selection.createRange()%3Bif(t.text!%3Dundefined)t%3Dt.text%3Bif(!t%7C%7Ct%3D%3D%27%27)%7Bvar a%3Dd.getElementsByTagName(%27textarea%27)%3Bfor(var i%3D0%3Bi<a.length%3B%2B%2Bi)%7Bif(a%5Bi%5D.selectionStart!%3Dundefined%26%26a%5Bi%5D.selectionStart!%3Da%5Bi%5D.selectionEnd)%7Bt%3Da%5Bi%5D.value.substring(a%5Bi%5D.selectionStart,a%5Bi%5D.selectionEnd)%3Bbreak%3B%7D%7D%7Dreturn t%3B%7D%3Bfunction g(d)%7Bvar t%3Btry%7Bt%3Df(d)%3B%7Dcatch(e)%7B%7D%3Bif(!t%7C%7Ct%3D%3D%27%27)%7Bvar fs%3Dd.getElementsByTagName(%27frame%27)%3Bfor(var i%3D0%3Bi<fs.length%3B%2B%2Bi)%7Bt%3Dg(fs%5Bi%5D.contentDocument)%3Bif(t%26%26t.toString()!%3D%27%27)break%3B%7Dif(!t%7C%7Ct.toString()%3D%3D%27%27)%7Bfs%3Dd.getElementsByTagName(%27iframe%27)%3Bfor(var i%3D0%3Bi<fs.length%3B%2B%2Bi)%7Bt%3Dg(fs%5Bi%5D.contentDocument)%3Bif(t%26%26t.toString()!%3D%27%27)break%3B%7D%7D%7Dreturn t%3B%7D%3Bvar t%3Dg(document)%3Bif(!t%7C%7Ct%3D%3D%27%27)alert(%27please select some text%27)%3Belse alert(%27Chars: %27%2Bt.toString().length%2B%27%5CnWords: %27%2Bt.toString().match(/(%5CS%2B)/g).length)%3B%7D)()

Bonus : Trouver des Noms de domaine expirés qui ne sont pas sur le marché

Belle astuce, avec un bookmarklet crĂ©Ă© par le SEO français Antoine Brisset pour trouver des noms de domaines expirĂ©s qui ne sont pas sur le marchĂ© et qu’il vous suffit d’acheter sur Namecheap pour une dizaine d’euros.

Il vous suffira d’aller sur un annuaire, de lancer le bookmarklet et vous connaĂźtrez les liens de l’annuaire qui sont des noms de domaines expirĂ©s.

A savoir : il faut un compte Rapide API et souscrire Ă  l’API Domainr pour pouvoir l’utiliser. Antoine explique tout cela en dĂ©tail ici. Je vous conseille de lire l’article car ce nom de domaine est un peu plus complexe Ă  utiliser 😊

Le code :

// Fonction pour extraire le nom de domaine d'une URL
function getDomain(url) {
  var a = document.createElement('a');
  a.href = url;
  return a.hostname;
}

// Fonction pour interroger l'API Domainr pour le statut de domaine
function getStatus(domain, link) {
  return fetch(`https://domainr.p.rapidapi.com/v2/status?mashape-key=YOUR_API_KEY&domain=${domain}`)
    .then(response => response.json())
    .then(data => {
      var status = data.status[0].status;
      if (status.indexOf("inactive") !== -1) {
        link.style.backgroundColor = "yellow";
        link.style.padding = "2px";
        link.style.fontWeight = "bold";
        link.style.fontSize = "larger";
        link.style.color = "red";
        return domain;
      }
    })
    .catch(error => console.error(error))
}

// Recherche de tous les liens externes de la page
var promises = [];
var currentDomain = getDomain(window.location.href);
var links = document.querySelectorAll('a[href^="http"]');
for (var i = 0; i < links.length; i++) {
  var link = links[i];
  var domain = getDomain(link.href);
  if (domain !== currentDomain) { // Vérifie si le lien pointe vers un domaine différent du domaine en cours
    promises.push(getStatus(domain, link));
  }
}
  
Promise.all(promises)
  .then(inactiveDomains => {
    inactiveDomains = [...new Set(inactiveDomains.filter(Boolean))];
    if (inactiveDomains.length > 0) {
      var message = "Les domaines inactifs sont : \n" + inactiveDomains.join("\n");
      alert(message);
    } else {
      alert('Aucun domaine inactif n\'a été trouvé');
    }
  });

Quelques autres articles du web qui m’ont aidĂ© et qui donne d’autres bookmarklets

Les bookmarklets pour la Search Console par Noiise (français)

L’article de rĂ©fĂ©rence en Anglais sur le sujet

Un autre article top en Anglais sur le sujet

Conclusion

En conclusion, les bookmarklets se rĂ©vĂšlent ĂȘtre des outils puissants et souvent mĂ©connus dans le domaine du SEO.

Ces petits morceaux de code Javascript, accessibles à tous, offrent une astuce ingénieuse pour automatiser des tùches répétitives et accélérer la productivité SEO.

Que vous soyez dev ou non, l’utilisation de ces bookmarklets peut considĂ©rablement simplifier votre travail quotidien.