2014-09-30 43 views
1

我想列出在網頁中找到的所有令牌。其核心是在功能來自html.NewTokenizer.Token的意外HTML令牌()

func find_links(httpBody io.Reader) []string { 

    links := make([]string, 0) 
    page := html.NewTokenizer(httpBody) 
    for { 
     tokenType := page.Next() 
     if tokenType == html.ErrorToken { 
      return links 
     } 
     token := page.Token() 
     fmt.Println("Now token is ", token) 
    } 
} 

當我打印輸出我得到類似

Now token is <body> 
Now token is 

Now token is <header> 

我不明白的第二令牌是什麼,以及爲什麼它是印刷一個額外的空行。一個工作示例的here

全代碼,即使它不能因爲缺少的HTTP包

+0

看起來您正在匹配一個回車符號作爲令牌。 (注意:絕對不知道去,所以我不能幫你修復它)。 – 2014-09-30 23:49:02

回答

1

的第二令牌的操場上運行是含有一個換行符TextToken

打印更改爲

fmt.Printf("Now token is %T %v\n", token, token) 

看到類型的令牌。

+0

這將解釋第二行;但我仍然不明白爲什麼我有一個空白行 – meto 2014-09-30 23:51:43