seo analyzer
1.0.0

用于分析HTML文件的库以显示所有SEO缺陷。
要使用CLI,必须在全球安装包装。
npm install -g seo-analyzerseo-analyzer -h| 选项 | args | 描述 |
|---|---|---|
| -h, - 螺旋 | 无效的 | 显示所有选项。 |
| -v, - version | 无效的 | 显示应用程序版本:显示应用程序的当前版本。 |
| -iu,-ignoreurls | [大批] | 从分析中排除特定的URL:将某些URL排除在分析之外,以避免处理不必要的网页。 |
| - 如果,-ignorefiles | [大批] | 从分析中排除特定文件:允许将某些文件排除在分析之外,以防止其处理。 |
| -ifl,-ignoreFolders | [大批] | 从分析中排除特定文件夹:排除分析过程中的指定文件夹,忽略这些文件夹中的所有文件。 |
| -u, - urls | [大批] | 对指定URL进行SEO分析:对指定URL进行SEO分析,检查其遵守某些SEO标准。 |
| -f, - 文件 | [大批] | 对指定文件执行SEO分析:对指定文件执行SEO分析,以确保其遵守优化标准和规则。 |
| -fl, - 折线 | [大批] | 对指定文件夹进行SEO分析:分析指定文件夹中的所有文件,以符合SEO规则和建议。 |
| -r,-rules | [大批] | 应用特定的SEO规则进行分析:在分析过程中应用特定的SEO规则,从而允许用户自定义检查过程。默认运行所有默认规则。 |
seo-analyzer -u https://maddevs.io https://maddevs.io/blogseo-analyzer -u https://maddevs.io -r titleLengthRule= ' { "min": "500" } '使用JSON格式将参数传递到规则。
要将SEO Analyzer用作GitHub上的操作,您可以在.github/Workflows/Analyzer.yml中创建一个WorkFlow文件,其中包含以下内容:
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.io在最后一步中,您可以指定要分析的URL。
安装到项目。
npm install -D seo-analyzer设置SEO分析仪尽可能简单。看起来像这样:
const SeoAnalyzer = require ( 'seo-analyzer' ) ;
new SeoAnalyzer ( )
. inputFiles ( < array > )
.addRule( < function > )
.addRule( < function > )
.outputConsole()
.run();接下来,我将向您展示一些示例。
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 ( ) ; | 方法 | 参数 | 描述 |
|---|---|---|
| 忽略 | ['dist/about.html'] | 此方法期望在分析之前忽略一系列文件。 |
| 忽略福尔德 | ['dist/忽略'] | 该方法期望在分析之前忽略一系列文件夹。 |
| 忽略 | ['/404'] | 该方法期望在分析之前有一系列URL忽略。 |
| 输入文件 | ['dist/index.html'] | 此方法期望HTML文件数组。 |
| 输入 | ['https://maddevs.io'] | 该方法期望一系列URL分析。 |
| 输入填料 | ['dist','src'] | 此方法期望带有HTML文件的文件夹数组。 |
| inputspafolder | '/dist','sitemap.xml',3000 | 此方法期望将一组带有水疗中心的文件夹构建到运行服务器的生产和端口。 |
| InputhtmlString | ['例子'] | 此方法期望一个包含HTML的字符串。 |
| 加法 | 函数(dom){} | 此方法添加了一个自定义规则来检查传入的HTML文件。 |
| OutputObject | 函数(obj){} | 此方法将返回报告作为JavaScript对象。 |
| outputjson | 功能(JSON){} | 此方法将以JSON格式返回报告。 |
| outputconsole | 无效的 | 该方法必须在链的末端使用,因为它完成了控制台中的过程。 |
以下是每个传输到SEO Analyzer的文件执行的规则。默认情况下它们是禁用的,必须添加。
检查标签的长度<title> 。接受两个参数:
. addRule ( 'titleLengthRule' , { min : 10 , max : 50 } )检查所有<img>标签是否具有alt =“”属性。
. addRule ( 'imgTagWithAltAttributeRule' )<a>带有rel属性规则的标签检查所有<a>标签是否具有rel =“”属性。
. addRule ( 'aTagWithRelAttributeRule' )检查页面上是否存在指定的基本元标记。接受一个参数:
. addRule ( 'metaBaseRule' , { list : [ 'description' , 'viewport' ] } )检查页面上是否存在指定的社交元标记。接受一个参数:
. 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'
] ,
} )检查页面上是否存在规范链接。
. addRule ( 'canonicalLinkRule' )自定义规则是获取DOM树参数的函数。
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 )
. . . 麻省理工学院许可证
版权(C)2024 MAD DEVS
特此免费授予获得此软件副本和相关文档文件副本(“软件”)的任何人,以无限制处理该软件,包括无限制的使用权,复制,复制,修改,合并,合并,发布,分发,分发,分发,订婚,和/或允许软件的副本,并允许对以下条件提供以下条件,以下是以下条件。
上述版权通知和此许可通知应包含在软件的所有副本或大量部分中。
该软件是“原样”提供的,没有任何形式的明示或暗示保证,包括但不限于适销性,特定目的的适用性和非侵权的保证。在任何情况下,作者或版权持有人都不应对任何索赔,损害赔偿或其他责任责任,无论是在合同,侵权的诉讼中还是其他责任,是由软件,使用或与软件中的使用或其他交易有关的。