現在的位置: 首頁 > 演算法 > 正文

怎樣用HTML::Lint來檢驗HTML頁面的錯誤

2020年05月22日 演算法 ⁄ 共 1603字 ⁄ 字型大小 評論關閉

  在Perl中編碼時,代碼中的錯誤相當明顯——解析器會將所有錯誤信息都顯示在屏幕上,向你警告出現的問題,並讓你立即採取措施進行更正。如果你在開發HTML頁面,就不存在這樣的早期警告系統——標記中出現的任何錯誤都被瀏覽器所忽略。更糟糕的是,一些瀏覽器甚至試圖「自動」更正常見的標記錯誤,給這個過程帶來許多新問題。下面學步園小編來講解下怎樣用HTML::Lint來檢驗HTML頁面的錯誤?

  怎樣用HTML::Lint來檢驗HTML頁面的錯誤

  首先,在Perl提示符下運行下列命令,下載並安裝此模塊(如果你還沒有這個模塊的話)。

  perl>perl-MCPAN-e"installHTML::Lint"

  LintingFiles

  安裝模塊後,建立並保存下面的HTML文件(保存為abc.html):

  

  

  Aisforapple,Bisforbaby

  

  

  如你所見,此文件中有一個有意的錯誤——開頭缺少標籤。這個錯誤在這裡相當明顯;但如果文件更大更複雜的話,就更難發覺缺少這樣的標籤。這就是為什麼下一步要編寫一些Perl代碼,用HTML::Lint來探測這個錯誤。

  建立並保存下列的腳本(保存為linter.pl):

  #!/usr/bin/perl

  #initializelinter

  useHTML::Lint;

  $lint=HTML::Lint->new();

  #parsefile

  $lint->parse_file("abc.html")ordie("Cannotfindfile!");

  #checkforerrors

  ($lint->err)?print"Yourcodestinks!":print"Yourcoderocks!";

  這個過程相當簡單:這段腳本初始化一個HTML::Lint對象,然後應用對象的parse_file()方法來解析前面建立的HTML文件。檢測到的錯誤(如果存在的話)被存儲在@err數組中,並向控制台顯示一個錯誤信息。

  怎樣用HTML::Lint來檢驗HTML頁面的錯誤

  以下是你看到的輸出結果:

  shell>./linter.plYourcodestinks!

  當然,如果你有大量的文件要進行驗證的話,這段代碼就有點不切實際。在那種情況下,你可能想在運行時向腳本提交HTML文件名及路徑,而不是把它硬編碼到腳本中。列表A是前面腳本的修訂版,正好可完成這一工作。

  列表A

  #!/usr/bin/perl

  #readfilenamefromcommandline

  if(!$ARGV[0]){die("ERROR:Nofilenameprovided");}

  #initializelinter

  useHTML::Lint;

  $lint=HTML::Lint->new();

  #parsefile

  $lint->parse_file($ARGV[0])ordie("ERROR:Cannotfindfile");

  #checkforerrors

  ($lint->err)?print"Yourcodestinks!":print"Yourcoderocks!";

  #printerrorcount

  print"Errorsfound:",scalar($lint->err);

  在這種情況下,腳本認為一個文件路徑是它的第一個引數,並將其保存在特殊的Perl@ARGV數組中。然後,腳本尋找這個文件,將它解析,並根據發現錯誤與否顯示一條信息。腳本的最後一行是新的:它根據HTML::Lint的@err錯誤數組的大小,顯示由解析器發現的錯誤數目。

  以上就是關於「怎樣用HTML::Lint來檢驗HTML頁面的錯誤」的內容,希望對大家有用。更多資訊請關注學步園。學步園,您學習IT技術的優質平台!

抱歉!評論已關閉.