
La bibliothèque pour analyser un fichier HTML pour afficher tous les défauts de référencement.
Pour utiliser la CLI, vous devez installer le package à l'échelle mondiale.
npm install -g seo-analyzerseo-analyzer -h| Option | Args | Description |
|---|---|---|
| -H, - help | nul | Afficher toutes les options. |
| -v, --version | nul | Afficher la version de l'application: affiche la version actuelle de l'application. |
| -iu, --ignoreurls | [tableau] | Exclure des URL spécifiques de l'analyse: exclut certaines URL de l'analyse pour éviter de traiter les pages Web indésirables. |
| -Si, --ignorefiles | [tableau] | Exclure des fichiers spécifiques de l'analyse: permet à l'exclusion de certains fichiers de l'analyse, en empêchant leur traitement. |
| -ifl, --ignorefolders | [tableau] | Exclure des dossiers spécifiques de l'analyse: exclut les dossiers spécifiés du processus d'analyse, en ignorant tous les fichiers dans ces dossiers. |
| -U, --urls | [tableau] | Effectuer une analyse SEO sur les URL spécifiées: effectue une analyse SEO pour les URL spécifiées, en vérifiant leur conformité avec certains critères de référencement. |
| -F, - Files | [tableau] | Effectuer une analyse SEO sur des fichiers spécifiés: effectue une analyse SEO sur des fichiers spécifiés, en garantissant leur adhésion aux normes et aux règles d'optimisation. |
| -fl, - Folder | [tableau] | Effectuer une analyse SEO sur des dossiers spécifiés: analyse tous les fichiers dans des dossiers spécifiés pour se conformer aux règles et recommandations de référencement. |
| -R, - Rules | [tableau] | Appliquer des règles de référencement spécifiques pour l'analyse: applique des règles de référencement spécifiques pendant l'analyse, permettant à l'utilisateur de personnaliser le processus d'inspection. Par défaut, exécutez toutes les règles par défaut. |
seo-analyzer -u https://maddevs.io https://maddevs.io/blogseo-analyzer -u https://maddevs.io -r titleLengthRule= ' { "min": "500" } 'Utilisez le format JSON pour transmettre les paramètres à la règle.
Pour utiliser SEO Analyzer comme actions sur GitHub, vous pouvez créer un fichier de workflow dans .github / workflows / analyzer.yml avec le contenu suivant:
name : SEO analyzer
on : [push]
jobs :
seo-analyzer :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v4
- name : Use Node.js
uses : actions/setup-node@v4
with :
node-version : ' 20.x '
- run : npm i -g seo-analyzer
- run : seo-analyzer -u https://maddevs.ioDans la dernière étape, vous pouvez spécifier l'URL que vous souhaitez analyser.
Installer sur le projet.
npm install -D seo-analyzerLa configuration de l'analyseur SEO est aussi simple que possible. Cela ressemblera à ceci:
const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputFiles ( < array > )
.addRule( < function > )
.addRule( < function > )
.outputConsole()
.run();Ensuite, je vais vous montrer quelques exemples.
const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputUrls ( [ 'https://maddevs.io' , 'https://maddevs.io/blog' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. ignoreUrls ( [ '/404' , '/login' ] )
. inputSpaFolder ( '/dist' , 'sitemapindex.xml' , 3000 )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputFiles ( [ 'index.html' , 'about.html' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputFolders ( [ 'dist' , 'src' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputFolders ( [ 'dist' , 'src' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputJson ( json => console . log ( json ) )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. ignoreFolders ( [ 'src/test' ] )
. ignoreFiles ( [ 'src/404.html' ] )
. inputFolders ( [ 'dist' , 'src' ] )
. addRule ( 'imgTagWithAltAttributeRule' )
. outputObject ( obj => console . log ( obj ) )
. run ( ) ; const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputHTMLString (
'<!DOCTYPE html><html><body><h1>title</h1><p>content</p></body></html>'
)
. addRule ( 'imgTagWithAltAttributeRule' )
. outputConsole ( )
. run ( ) ; | Méthode | Paramètres | Description |
|---|---|---|
| ignorer | ['dist / about.html'] | Cette méthode s'attend à ce qu'un tableau de fichiers ignore avant l'analyse. |
| ignorefolders | ['Dist / ignore'] | Cette méthode s'attend à ce qu'un éventail de dossiers ignore avant l'analyse. |
| ignorer les eaux | ['/ 404'] | Cette méthode s'attend à ce qu'un tableau d'URL ignore avant l'analyse. |
| entrée | ['dist / index.html'] | Cette méthode s'attend à un tableau de fichiers HTML. |
| entrée | ['https://maddevs.io'] | Cette méthode s'attend à ce qu'un tableau d'URL analyse. |
| pliments d'entrée | ['dist', 'src'] | Cette méthode s'attend à un tableau de dossiers avec des fichiers HTML. |
| entrée | '/ dist', 'sitemap.xml', 3000 | Cette méthode s'attend à une chaîne de dossiers avec des fichiers Buildd Spa vers la production et le port pour le serveur d'exécution. |
| inputhtmlstring | ['exemple'] | Cette méthode s'attend à une chaîne contenant HTML. |
| adrule | fonction (dom) {} | Cette méthode ajoute une règle personnalisée pour vérifier les fichiers HTML entrants. |
| outputObject | fonction (obj) {} | Cette méthode renverra le rapport en tant qu'objet JavaScript. |
| outputjson | fonction (json) {} | Cette méthode renverra le rapport au format JSON. |
| outporconsole | nul | Cette méthode doit être utilisée à la toute fin de la chaîne, car elle termine le processus dans la console. |
Vous trouverez ci-dessous les règles exécutées pour chaque fichier transféré à l'analyseur de référencement. Ils sont désactivés par défaut et doivent être ajoutés.
Vérifie la longueur de la balise <title> . Deux paramètres sont acceptés:
. addRule ( 'titleLengthRule' , { min : 10 , max : 50 } ) Vérifie si toutes les balises <img> ont ALT = "" Attribut.
. addRule ( 'imgTagWithAltAttributeRule' )<a> Tag avec la règle d'attribut rel Vérifie si toutes les balises <a> ont rel = "" attribut.
. addRule ( 'aTagWithRelAttributeRule' )Vérifie si les balises de méta de base spécifiées sont présentes sur la page. Accepte un paramètre:
. addRule ( 'metaBaseRule' , { list : [ 'description' , 'viewport' ] } )Vérifie si les balises de méta sociale spécifiées sont présentes sur la page. Accepte un paramètre:
. addRule ( 'metaSocialRule' , {
properties : [
'og:url' ,
'og:type' ,
'og:site_name' ,
'og:title' ,
'og:description' ,
'og:image' ,
'og:image:width' ,
'og:image:height' ,
'twitter:card' ,
'twitter:text:title' ,
'twitter:description' ,
'twitter:image:src' ,
'twitter:url'
] ,
} )Vérifie si un lien canonique existe sur la page.
. addRule ( 'canonicalLinkRule' )Une règle personnalisée est une fonction qui prend un argument Dom Tree.
function customRule ( dom ) {
return new Promise ( async ( resolve , reject ) => {
const paragraph = dom . window . document . querySelector ( 'p' ) ;
if ( paragraph ) {
resolve ( '' ) ;
} else {
reject ( 'Not found <p> tags' ) ;
}
} ) ;
}
. . .
. addRule ( customRule )
. . . Licence MIT
Copyright (C) 2024 MAD Defs
L'autorisation est accordée gratuitement à toute personne qui obtient une copie de ce logiciel et des fichiers de documentation associés (le "logiciel"), pour traiter le logiciel sans restriction, y compris sans limiter les droits d'utilisation, de copie, de modification, de fusion, de publication, de distribution, de sublince et / ou de vendre des copies des conditions suivantes.
L'avis de droit d'auteur ci-dessus et le présent avis d'autorisation sont inclus dans toutes les copies ou des parties substantielles du logiciel.
Le logiciel est fourni "tel quel", sans garantie d'aucune sorte, express ou implicite, y compris, mais sans s'y limiter, les garanties de qualité marchande, d'adéquation à un usage particulier et de non-contrefaçon. En aucun cas, les auteurs ou les titulaires de droits d'auteur ne seront pas responsables de toute réclamation, dommage ou autre responsabilité, que ce soit dans une action de contrat, de délit ou autre, découlant de, ou en relation avec le logiciel ou l'utilisation ou d'autres transactions dans le logiciel.