本文整理匯總了Golang中git/oschina/net/ciweilao/game_spider/git/page.Page.IsBreak方法的典型用法代碼示例。如果您正苦於以下問題:Golang Page.IsBreak方法的具體用法?Golang Page.IsBreak怎麽用?Golang Page.IsBreak使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類git/oschina/net/ciweilao/game_spider/git/page.Page
的用法示例。
在下文中一共展示了Page.IsBreak方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Process
func (this *YouxiduoProcesser) Process(p *page.Page) {
if !p.IsSucc() {
println(p.GetErrMsg())
return
}
var body string = p.GetBody()
var urlTag string = p.GetRequest().GetUrlTag()
p.SetUrlTag(urlTag)
//分析這個頁麵是LIST頁麵還是內容頁麵
// <div class="infroList"><ul><li>...</div>===>LIST
// <div class="pagebreak">...</div>===>LIST
// CONTENT
//<div class="article"
if urlTag == "list" {
//
//1.尋找news-brief的content
regList, err := regexp.Compile(`<div class=\"infroList\">(\s|.)*<\/ul>(\s|.)*<div class=\"pagebreak\">`)
if err != nil {
logs.GetFirstLogger().Error("分析頁麵出錯,正則表達式錯誤了,url = " + p.GetRequest().GetUrl())
}
var infroList []string = regList.FindAllString(body, -1)
if len(infroList) > 0 {
this.parseNewsBreifInfo(infroList[0], p)
} else {
logs.GetFirstLogger().Info("No more list items")
}
//先尋找額外的LIST頁麵
if !p.IsBreak() {
regPageBreak, err := regexp.Compile(`<div class=\"pagebreak\">(\s|.)+<li class=\"lastPage\">`)
if err != nil {
logs.GetFirstLogger().Error("分析頁麵出錯,翻頁正則表達式錯誤,url = " + p.GetRequest().GetUrl())
}
var pageBreakList []string = regPageBreak.FindAllString(body, -1)
if len(pageBreakList) > 0 {
this.parseNewsLinkListInfo(pageBreakList[0], p)
} else {
logs.GetFirstLogger().Info("No more links")
}
}
} else {
//CONTENT
this.parseNewsDetail(body, p)
}
}
示例2: parseNewsLinkListInfo
func (this *YouxiduoProcesser) parseNewsLinkListInfo(content string, p *page.Page) *page.Page {
//println("B LINK URLS")
if p.IsBreak() {
return p
}
reg, _ := regexp.Compile(`<a href(.)*<\/a>`)
urlStr := reg.FindAllString(content, -1)
for _, tmp := range urlStr {
var pos1 int = strings.Index(tmp, "href=")
var pos2 int = strings.Index(tmp, ">")
if (pos2 - 1) > (pos1 + 6) {
tmp = string(tmp[pos1+6 : pos2-1])
if strings.Index(tmp, "http://") >= 0 {
continue
}
tmp = util.GetRealUrl(p.GetRequest().GetUrl(), tmp)
p.AddNewUrl(tmp, "list")
// println("list url = " + tmp)
}
}
//println("E LINK URLS")
return p
}