package crawler import ( "fmt" "math" "sync" ) // 上交所爬蟲 type Sse struct { /* WaitGroup:同步等待組 可以使用Add(),設置等待組中要 執行的子goroutine的數量, 使用wait(),讓主程序處於等待狀態。直到等待組中子程序執行完畢。解除阻塞 子gorotuine對應的函數中。wg.Done(),用於讓等待組中的子程序的數量減1 */ wg sync.WaitGroup } // CrawlerStocks 爬取上交所股票列表 func (c *Sse) CrawlerStocks() { ssesl := SseStockList{} count := ssesl.GetStockCount() var pagesize = 100 var pagecount = int(math.Ceil(float64(count) / float64(pagesize))) c.wg.Add(pagecount) for i := 0; i < pagecount; i++ { go func(index int) { fmt.Println("正在拉取第", index, "頁,一共", pagecount, "頁") ssesl.GetQueryData(index, pagesize) c.wg.Done() }(i + 1) } c.wg.Wait() fmt.Println("數據已拉取完畢嘍") }
2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=1&pageHelp.pageNo=1&pageHelp.pageSize=1&pageHelp.endPage=11&_=1626941637552685000 正在拉取第 17 頁,一共 17 頁 正在拉取第 12 頁,一共 17 頁 正在拉取第 1 頁,一共 17 頁 正在拉取第 9 頁,一共 17 頁 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=17&pageHelp.pageNo=17&pageHelp.pageSize=100&pageHelp.endPage=171&_=1626941637647913000 正在拉取第 2 頁,一共 17 頁 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=9&pageHelp.pageNo=9&pageHelp.pageSize=100&pageHelp.endPage=91&_=1626941637647931000 正在拉取第 3 頁,一共 17 頁 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=3&pageHelp.pageNo=3&pageHelp.pageSize=100&pageHelp.endPage=31&_=1626941637647951000 正在拉取第 10 頁,一共 17 頁 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=10&pageHelp.pageNo=10&pageHelp.pageSize=100&pageHelp.endPage=101&_=1626941637648266000 正在拉取第 13 頁,一共 17 頁 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=2&pageHelp.pageNo=2&pageHelp.pageSize=100&pageHelp.endPage=21&_=1626941637647939000 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=13&pageHelp.pageNo=13&pageHelp.pageSize=100&pageHelp.endPage=131&_=1626941637648341000 正在拉取第 14 頁,一共 17 頁 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=12&pageHelp.pageNo=12&pageHelp.pageSize=100&pageHelp.endPage=121&_=1626941637647982000 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=1&pageHelp.pageNo=1&pageHelp.pageSize=100&pageHelp.endPage=11&_=1626941637647919000 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=14&pageHelp.pageNo=14&pageHelp.pageSize=100&pageHelp.endPage=141&_=1626941637648629000 正在拉取第 15 頁,一共 17 頁 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=15&pageHelp.pageNo=15&pageHelp.pageSize=100&pageHelp.endPage=151&_=1626941637648746000 正在拉取第 16 頁,一共 17 頁 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=16&pageHelp.pageNo=16&pageHelp.pageSize=100&pageHelp.endPage=161&_=1626941637648838000 正在拉取第 7 頁,一共 17 頁 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=7&pageHelp.pageNo=7&pageHelp.pageSize=100&pageHelp.endPage=71&_=1626941637648960000 正在拉取第 8 頁,一共 17 頁 2021/正在拉取第 5 頁,一共 17 頁 正在拉取第 4 頁,一共 17 頁 正在拉取第 11 頁,一共 17 頁 正在拉取第 6 頁,一共 17 頁 07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=8&pageHelp.pageNo=8&pageHelp.pageSize=100&pageHelp.endPage=81&_=1626941637649021000 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=5&pageHelp.pageNo=5&pageHelp.pageSize=100&pageHelp.endPage=51&_=1626941637649186000 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=4&pageHelp.pageNo=4&pageHelp.pageSize=100&pageHelp.endPage=41&_=1626941637649204000 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=11&pageHelp.pageNo=11&pageHelp.pageSize=100&pageHelp.endPage=111&_=1626941637649216000 2021/07/22 16:13:57 爬取地址是: http://query.sse.com.cn/security/stock/getStockListData2.do?isPagination=true&stockCode=&csrcCode=&areaName=&stockType=1&pageHelp.cacheSize=1&pageHelp.beginPage=6&pageHelp.pageNo=6&pageHelp.pageSize=100&pageHelp.endPage=61&_=1626941637649228000 數據已拉取完畢嘍