您现在的位置是:首页 > 欧洲杯 >正文
推广众发娱乐赚钱吗 (关于推广众发娱乐赚钱吗 玩法)
发布时间:2022-11-22 23:25:37admin来源:欧洲杯
推广众发娱乐赚钱吗 是一款用go语言写的某书屋爬虫,有代码,有成品,大家笑纳,今天写了一个书屋的爬虫,献给爱读书的朋友们,该网站有两种下载页,一个城通,一个百度云,城通没有密码,百度云含密码,才学go语言,所以没有去重功能,每次会重新新建txt文档,之前爬好的数据,注意保存哦.
爬取书名+下载网址+密码
这是单线程的,多线程,多线程,直接go working(i)即可.再加入channel通知主go程退出即可
package main
import (
fmt
io
net/http
os
regexp
strconv
strings
)
var count int
func main() {
var start, end int
fmt.Print(起始页(>=1):)
fmt.Scan(&start)
fmt.Print(终止页(>=起始页[适度爬取,太多小心IP被封哦]):)
fmt.Scan(&end)
//创建文件
fc,err:=os.Create(BookList.txt)
if err!=nil{
fmt.Println(os.Create err,err)
return
}
fc.Close()
//循环读取每一页
for i := start; i <= end; i++ {
working(i)
}
fmt.Println(爬取完毕,马上闪开!!!)
}
func working(idx int) {
//打开文件
fo,err:=os.OpenFile(BookList.txt,os.O_APPEND,6)
if err!=nil{
fmt.Println(os.OpenFile err,err)
return
}
defer fo.Close()
url := https://www.bukebook.cn/page/ + strconv.Itoa(idx)
result, err := httpGet(url, idx)
if err != nil {
fmt.Println(检查网络,或者IP被封了...)
return
}
//正则处理信息获得bookID
//正则规则
bookIDRule :=`class=greatwp-fp04-post-title>`
bookNameRule := `.html>《(?s:(.*?))`
CTUrlRule := `城通网盘`
psdRule := `提取秘钥:(?s:(.*?)) `
allID:=regexpData(result, bookIDRule)
for i,tmpID:=range allID{
bookID:=tmpID[1]
//拼接下载页URL
dlUrl:=https://www.bukebook.cn/wp-content/plugins/ordown/down.php?id=+bookID
//访问下载页
dlResult,err:=httpGet(dlUrl,i)
if err!=nil{
fmt.Println(dl httpGet err,err)
return
}
//处理数据获取书名,下载地址及密码
allBookName:=regexpData(dlResult,bookNameRule)
allCTUrl:=regexpData(dlResult,CTUrlRule)
allPsd:=regexpData(dlResult,psdRule)
//fmt.Println(dlResult)
for _,tmpBookName:=range allBookName{
bookName:=tmpBookName[1]
//判断网盘类型
if strings.Contains(dlResult,百度云盘){
count++
//封装百度网盘URL
BDUrl:=https://www.bukebook.cn/wp-content/plugins/ordown/download1.php?id=+bookID
//获取网盘密码
for _,tmpPsd:=range allPsd{
//存储书名及城通地址
fo.Write([]byte(strconv.Itoa(count)+.《+bookName+\n+BDUrl+ +tmpPsd[1]+\n))
fmt.Println(《+bookName+ 完成\n)
}
}else{
count++
//获取城通网址
for _,tmpCTUrl:=range allCTUrl{
//存储书名及城通地址
fo.Write([]byte(strconv.Itoa(count)+.《+bookName+\n+tmpCTUrl[1]+\n))
fmt.Println(《+bookName+ 完成\n)
}
}
}
}
}
func regexpData(data, rule string) [][]string {
reg := regexp.MustCompile(rule)
return reg.FindAllStringSubmatch(data, -1)
}
func httpGet(url string, idx int) (result string, err error) {
resp, err1 := http.Get(url)
if err1 != nil {
err = err1
return
}
defer resp.Body.Close()
buf := make([]byte, 4096)
for {
n, err2 := resp.Body.Read(buf)
if n == 0 {
break
}
if err2 != nil && err2 != io.EOF {
err = err2
return
}
result += string(buf[:n])
}
return
}
标签:推广众发娱乐赚钱吗
直播在线直播 (关于直播在线直播 玩法)下一篇
最后一页
猜你喜欢
最新文章
- 推广众发娱乐赚钱吗 (关于推广众发娱乐赚钱吗 玩法)
- 尊宝官网 (关于尊宝官网 玩法)
- 澳门百老汇游戏 (关于澳门百老汇游戏 玩法)
- 双色球2019057 (关于双色球2019057 玩法)
- 直播在线直播 (关于直播在线直播 玩法)
- 雅典娱乐场平台 (关于雅典娱乐场平台 玩法)
- 博鱼体育app官方入口 (关于博鱼体育app官方入口 玩法)
- 山东莱州 (关于山东莱州 玩法)
- 优博天下白菜网址导航 (关于优博天下白菜网址导航 玩法)
- pt老虎机游戏大厅 (关于pt老虎机游戏大厅 玩法)
- 2020年rng夏季赛赛程 (关于2020年rng夏季赛赛程 玩法)
- 10分11选5 (关于10分11选5 玩法)
- 百乐宫全球真人第一 (关于百乐宫全球真人第一 玩法)
- pc蛋蛋游戏 (关于pc蛋蛋游戏 玩法)
- 1331银河在线平台 (关于1331银河在线平台 玩法)
- 吉祥棋牌账户个人中心 (关于吉祥棋牌账户个人中心 玩法)
- 棋牌会馆手机大厅 (关于棋牌会馆手机大厅 玩法)
- 必博体育官方app(关于必博体育官方app玩法)
- 美高梅线上 (关于美高梅线上 玩法)
- 爱拼官网投 (关于爱拼官网投 玩法)
- vwin德赢官网比分 (关于vwin德赢官网比分 玩法)
- 今曰中国竞彩足球对阵表 (关于今曰中国竞彩足球对阵表 玩法)
- vns威尼斯体育app网站 (关于vns威尼斯体育app网站 玩法)
- 竞彩ppt (关于竞彩ppt 玩法)