mirror of
https://github.com/FloatTech/ZeroBot-Plugin.git
synced 2025-12-19 13:59:39 +08:00
⚡️ 使用 pximg 下载图片
This commit is contained in:
parent
46bcbbdd3b
commit
d3888d22b1
@ -2,9 +2,11 @@ package utils
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"crypto/md5"
|
"crypto/md5"
|
||||||
|
"crypto/tls"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
|
"net"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
"strings"
|
"strings"
|
||||||
@ -14,7 +16,6 @@ import (
|
|||||||
func (this *Illust) PixivPicDown(path string) (savePath string, err error) {
|
func (this *Illust) PixivPicDown(path string) (savePath string, err error) {
|
||||||
url := this.ImageUrls
|
url := this.ImageUrls
|
||||||
pid := this.Pid
|
pid := this.Pid
|
||||||
url = strings.ReplaceAll(url, "i.pximg.net", "i.pixiv.cat")
|
|
||||||
url = strings.ReplaceAll(url, "img-original", "img-master")
|
url = strings.ReplaceAll(url, "img-original", "img-master")
|
||||||
url = strings.ReplaceAll(url, "_p0", "_p0_master1200")
|
url = strings.ReplaceAll(url, "_p0", "_p0_master1200")
|
||||||
url = strings.ReplaceAll(url, ".png", ".jpg")
|
url = strings.ReplaceAll(url, ".png", ".jpg")
|
||||||
@ -24,11 +25,26 @@ func (this *Illust) PixivPicDown(path string) (savePath string, err error) {
|
|||||||
if PathExists(savePath) && FileSize(savePath) > 10240 {
|
if PathExists(savePath) && FileSize(savePath) > 10240 {
|
||||||
return savePath, nil
|
return savePath, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// 模拟QQ客户端请求
|
// 模拟QQ客户端请求
|
||||||
client := &http.Client{}
|
client := &http.Client{
|
||||||
|
Transport: &http.Transport{
|
||||||
|
DisableKeepAlives: true,
|
||||||
|
// 绕过sni审查
|
||||||
|
TLSClientConfig: &tls.Config{
|
||||||
|
ServerName: "-",
|
||||||
|
InsecureSkipVerify: true,
|
||||||
|
},
|
||||||
|
// 更改dns
|
||||||
|
Dial: func(network, addr string) (net.Conn, error) {
|
||||||
|
return net.Dial("tcp", "210.140.92.140:443")
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
reqest, _ := http.NewRequest("GET", url, nil)
|
reqest, _ := http.NewRequest("GET", url, nil)
|
||||||
reqest.Header.Add("User-Agent", "QQ/8.2.0.1296 CFNetwork/1126")
|
reqest.Header.Set("Referer", "https://www.pixiv.net/")
|
||||||
reqest.Header.Add("Net-Type", "Wifi")
|
reqest.Header.Set("Host", "i.pximg.net")
|
||||||
|
reqest.Header.Set("User-Agent", "QQ/8.2.0.1296 CFNetwork/1126")
|
||||||
|
|
||||||
resp, err := client.Do(reqest)
|
resp, err := client.Do(reqest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user