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
特此免費授予獲得此軟件副本和相關文檔文件副本(“軟件”)的任何人,以無限制處理該軟件,包括無限制的使用權,複製,複製,修改,合併,合併,發布,分發,分發,分發,訂婚,和/或允許軟件的副本,並允許對以下條件提供以下條件,以下是以下條件。
上述版權通知和此許可通知應包含在軟件的所有副本或大量部分中。
該軟件是“原樣”提供的,沒有任何形式的明示或暗示保證,包括但不限於適銷性,特定目的的適用性和非侵權的保證。在任何情況下,作者或版權持有人都不應對任何索賠,損害賠償或其他責任責任,無論是在合同,侵權的訴訟中還是其他責任,是由軟件,使用或與軟件中的使用或其他交易有關的。