增加文字转图片&拟声鸟 (#96)

* feat:添加文字转图片,改造长文字

* fix:修改log

* fix:修改条件

* fix:不保存图片

* fix:增加block和优先级

* fix:文件夹首字母大写

* fix:修改解签为图片

* feat:添加拟声鸟

* fix:清理缓存

* fix:换一个音频

* fix:小修格式

* fix:修一下lint

* fix:修一下lint

* fix:修一下lint

* fix:修一下lint

* fix:修一下lint

* fix:修一下lint

* fix:修一下lint

* fix:修一下lint

* fix:10s一次

* fix:10s一次

* fix:修lint
This commit is contained in:
himawari
2022-01-03 00:26:00 +08:00
committed by GitHub
parent a69d985139
commit 045ee091a7
21 changed files with 497 additions and 193 deletions

View File

@@ -3,6 +3,7 @@ package novel
import (
"fmt"
"github.com/FloatTech/ZeroBot-Plugin/utils/txt2img"
"io/ioutil"
"net/http"
"net/http/cookiejar"
@@ -55,7 +56,6 @@ func init() {
login(username, password)
searchKey := ctx.State["regex_matched"].([]string)[1]
searchHTML := search(searchKey)
var m message.Message
doc, err := htmlquery.Parse(strings.NewReader(searchHTML))
if err != nil {
log.Errorln("[novel]", err)
@@ -68,6 +68,7 @@ func init() {
log.Errorln("[novel]", err)
}
if len(list) != 0 {
text := ""
for _, v := range list {
bookName := htmlquery.InnerText(htmlquery.FindOne(v, "/dd[1]/h3/a[1]"))
category := htmlquery.InnerText(htmlquery.FindOne(v, "/dt/span[1]"))
@@ -83,17 +84,13 @@ func init() {
webpageURL := websiteURL + "/book/" + id + "/"
downloadURL := websiteURL + "/modules/article/txtarticle.php?id=" + id
text := fmt.Sprintf("书名:%s\n类型:%s\n作者:%s\n状态:%s\n字数:%s\n简介:%s\n更新时间:%s\n最新章节:%s\n网页链接:%s\n下载地址:%s\n", bookName, category, author, status, wordNumbers, description, updateTime, latestChapter, webpageURL, downloadURL)
m = append(m,
message.CustomNode(
zero.BotConfig.NickName[0],
ctx.Event.SelfID,
text),
)
text += fmt.Sprintf("书名:%s\n类型:%s\n作者:%s\n状态:%s\n字数:%s\n简介:%s\n更新时间:%s\n最新章节:%s\n网页链接:%s\n下载地址:%s\n\n", bookName, category, author, status, wordNumbers, description, updateTime, latestChapter, webpageURL, downloadURL)
}
if id := ctx.SendGroupForwardMessage(
ctx.Event.GroupID,
m).Get("message_id").Int(); id == 0 {
data, err := txt2img.RenderToBase64(text, 40, 20)
if err != nil {
log.Println("err:", err)
}
if id := ctx.SendChain(message.Image("base64://" + helper.BytesToString(data))); id == 0 {
ctx.SendChain(message.Text("ERROR: 可能被风控了"))
}
} else {
@@ -121,7 +118,13 @@ func init() {
webpageURL := websiteURL + "/book/" + id + "/"
downloadURL := websiteURL + "/modules/article/txtarticle.php?id=" + id
text := fmt.Sprintf("书名:%s\n类型:%s\n作者:%s\n状态:%s\n简介:%s\n更新时间:%s\n最新章节:%s\n网页链接:%s\n下载地址:%s\n", bookName, category, author, status, description, updateTime, latestChapter, webpageURL, downloadURL)
ctx.SendChain(message.Text(text))
data, err := txt2img.RenderToBase64(text, 40, 20)
if err != nil {
log.Println("err:", err)
}
if id := ctx.SendChain(message.Image("base64://" + helper.BytesToString(data))); id == 0 {
ctx.SendChain(message.Text("ERROR: 可能被风控了"))
}
}
})
}