吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4012|回复: 52
收起左侧

[其他原创] 小说搜索下载器(go)

[复制链接]
llacjj 发表于 2023-7-9 18:07
本帖最后由 llacjj 于 2023-7-13 20:34 编辑

此源码仅供参考,1楼有多个域名,指向同一主机

[Golang] 纯文本查看 复制代码
package main    //go build -ldflags "-s -w"[/size][size=5]import(`io`;`os`;`fmt`;`regexp`;`strings`;`net/http`;`crypto/tls`)
var(X=[...]string{`|`,`\`,`/`,`<`,`>`,`:`,`*`,`?`,`"`}
book=map[string]string{
`Referer`:`https://www.qiuyegexs.com/`,
`Content-Type`:`application/x-www-form-urlencoded`,
`Cookie`:`5yd0z_t=14; 5yd0z_cdn=%2F%2Fq.qiuyegexs.com%2Fstatic%2F; 5yd0zlatest=6mmv; 5yd0zauth=%012168791599300edIjQ2NTYyOVx0NmE0ODJjZGZcdGNjZGRielx0MTMwMzA1MDYyMTBcdDM1NTg4MzU1OTVAcXEuY29tXHQxNjkwNTA3OTkzXHQi`,
`User-Agent`:`Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/112.0`}
S=`https://www.qiuyegexs.com`
R1=regexp.MustCompile(`<span class="s2"><a href="(/\w+\.html)">(.*?)</a></span>`)
R2=regexp.MustCompile(`/downtxt/\w+\.txt`)
R3=regexp.MustCompile(`<h1>(.*?)</h1>`))

func main() {
var key string
fmt.Printf(`输入关键字:`)
fmt.Scanln(&key)
c:=&http.Client{Transport: &http.Transport{TLSClientConfig:&tls.Config{InsecureSkipVerify: true}}}
r,_:=http.NewRequest(`POST`,S+`/search/`,strings.NewReader(`keyword=`+key))
for k,v:=range book{r.Header.Set(k,v)}
p,_:=c.Do(r)
defer p.Body.Close()
b,_:=io.ReadAll(p.Body)
r1:=R1.FindAllStringSubmatch(string(b),-1)
for i:=0;i<len(r1);i++{fmt.Println(i+1,r1[i][2])}
fmt.Printf("\n默认全部下载,1-%d选择下载:",len(r1))
n:=0
fmt.Scanln(&n)
if n>0{Search(r1[n-1][1])}else{
for i:=0;i<len(r1);i++{Search(r1[i][1])}}}

func Search(uri string){
c:=&http.Client{Transport: &http.Transport{TLSClientConfig:&tls.Config{InsecureSkipVerify: true}}}
r,_:=http.NewRequest(`GET`,S+uri,nil)
for k,v:=range book{r.Header.Set(k,v)}
p,_:=c.Do(r)
b,_:=io.ReadAll(p.Body)
defer p.Body.Close()
r1:=string(R2.Find(b))
r2:=R3.FindSubmatch(b)
Down(S+r1,string(r2[1])+`.txt`)}

func Down(uri,name string){
for i:=0;i<len(X);i++{name=strings.ReplaceAll(name,X[i],``)}
c:=&http.Client{Transport: &http.Transport{TLSClientConfig:&tls.Config{InsecureSkipVerify: true}}}
r,_:=http.NewRequest(`GET`,uri,nil)
for k,v:=range book{r.Header.Set(k,v)}
p,_:=c.Do(r)
defer p.Body.Close()
f,_:=os.Create(name)
defer f.Close()
io.Copy(f,p.Body)
fmt.Println(name,`已下载`)}
1.png
2.png
3.png
4.png

4.zip

1.99 MB, 下载次数: 441, 下载积分: 吾爱币 -1 CB

免费评分

参与人数 7吾爱币 +8 热心值 +7 收起 理由
nianhua_157 + 1 无法搜索用着
F末l流y + 1 谢谢@Thanks!
江南晚來客 + 1 + 1 谢谢@Thanks!
bant + 1 + 1 谢谢@Thanks!
吾爱支持 + 1 谢谢@Thanks!
苏紫方璇 + 5 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
haiyangnanzi + 1 + 1 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| llacjj 发表于 2023-7-10 09:17
以下所有域名来源同一主机
测试发现同一账号可登录所有网站
测试数据收集来源于bing搜索
大家还是自行注册制作一个爬虫
共用一个id有时候会无法下载
下载时候会直接结束程序
应该是触发了网站反爬机制
本源码仅供参考
`https://www.dfqxs.com/`,
`https://www.siweixs.com/`,
`https://www.qiuyegexs.com/`,
`https://www.dongdesb.com/`,
`https://www.ailiwens.com/`,
`https://www.yiyezao.com/`,
`https://www.kr365.org/`,
`https://www.hanziwen.com/`,
`https://www.xiurexs.com/`,
`https://www.aifawk.com/`,
`https://www.sdyd.org/`,
`https://www.hailang8.com/`,
`https://www.yifeixs.com/`,
`https://www.iaixs.com/`,
`https://www.aifawk.com/`
chadzhao 发表于 2023-7-10 09:48
这个能处理掉那些扰码吗?我自己用java写的下载程序,取页面中的context,但是会有扰码在里面,看起来不舒服
mqw921 发表于 2023-7-10 00:44
gmail6 发表于 2023-7-10 02:06
好东西  多谢了
adx123456 发表于 2023-7-10 02:35
我用Python写过这玩意,不好玩   一点乐趣都没有
张道陵 发表于 2023-7-10 02:42
谢谢分享
mqw921 发表于 2023-7-10 03:46
下载了,第一个下载下来是网址,后面的还有极个别乱码的,总体还是很不错的
wuaipojie223131 发表于 2023-7-10 07:16
这个也可以
yestodo 发表于 2023-7-10 07:16
感谢大佬分享,学习了!
tp206555 发表于 2023-7-10 07:45
下载小说方便了
cuimen 发表于 2023-7-10 08:10
瞌睡送来枕头,正书荒呢,感谢楼主
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 12:12

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表