第二步 :采集分站后在采集所有分站下的分页列表地址到city_company_with_page.txt
package main import ( "fmt" "io/ioutil" "strings" "strconv" "github.com/PuerkitoBio/goquery" "os" ) func main () { dataPath := "data/city_site.txt" content, err := ioutil.ReadFile(dataPath) if err != nil { panic(err) } //读取所有的内容 str := string(content) citys := strings.Split(str, "\n") //保存所有city映射地址的连接 cityUrls := map[string]string{} for _, city := range citys { cityUrl := strings.Split(city, " ") cityUrls[cityUrl[1]] = cityUrl[2]+"/company/" } var index int = 0 var pagelasturl string = "" fd, _ := os.OpenFile("data/city_company_with_page.txt", os.O_RDWR|os.O_CREATE|os.O_APPEND, 0644) for _, cityUrl := range cityUrls { pageurl := cityUrl+"?p=" for { index++ temp := strconv.Itoa(index) pagelasturl = pageurl + temp doc, _ := goquery.NewDocument(pagelasturl) h := doc.Find(".page a").Last().Text() if h != "下一页" { index = 0 fmt.Println("采集最后一页"+pagelasturl) fd.WriteString(pagelasturl + "\n") //其他分页先入库 break } if index == 1{ fmt.Println("采集到本地"+cityUrl) fd.WriteString(cityUrl + "\n") //其他分页先入库 }else{ fmt.Println("采集到本地"+pagelasturl) fd.WriteString(pagelasturl + "\n") //其他分页先入库 } temp = "" pagelasturl = "" } } }
點擊查看更多內(nèi)容
為 TA 點贊
評論
評論
共同學(xué)習(xí),寫下你的評論
評論加載中...
作者其他優(yōu)質(zhì)文章
正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦