lintonxue00
commited on
Commit
•
a45f3fe
1
Parent(s):
7e84625
Upload randomimages.js
Browse files- 不知道/回收站/1/randomimages.js +114 -0
不知道/回收站/1/randomimages.js
ADDED
@@ -0,0 +1,114 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import {common} from '../model/index.js'
|
2 |
+
import fetch from "node-fetch";
|
3 |
+
import plugin from '../../../lib/plugins/plugin.js'
|
4 |
+
|
5 |
+
const apis = [
|
6 |
+
'https://img.xjh.me/random_img.php',
|
7 |
+
'https://www.dmoe.cc/random.php?return=json',
|
8 |
+
'https://api.vvhan.com/api/acgimg?type=json',
|
9 |
+
'https://www.dmoe.cc/random.php?return=json',
|
10 |
+
'http://api.caonm.net/api/dm/index.php?return=json',
|
11 |
+
'https://api.ghser.com/random/api.php?return=json',
|
12 |
+
'https://api.yfzy.top/laifentu.php?return=json',
|
13 |
+
'https://api.yimian.xyz/img',
|
14 |
+
'https://api.yfzy.top/laifentu.php',
|
15 |
+
'https://api.dujin.org/pic/yuanshen?return=json',
|
16 |
+
]
|
17 |
+
|
18 |
+
let useapi = apis
|
19 |
+
|
20 |
+
export class xy_sjt extends plugin {
|
21 |
+
constructor() {
|
22 |
+
super({
|
23 |
+
name: '随机图',
|
24 |
+
dsc: '二次元图',
|
25 |
+
event: 'message',
|
26 |
+
priority: 8888,
|
27 |
+
rule: [{
|
28 |
+
reg: '^#?来(点|份)(二次元|随机图)(\\d+张)?$',
|
29 |
+
fnc: 'txsjt'
|
30 |
+
}]
|
31 |
+
})
|
32 |
+
|
33 |
+
}
|
34 |
+
|
35 |
+
async txsjt(e) {
|
36 |
+
let image = []
|
37 |
+
let res = []
|
38 |
+
let img
|
39 |
+
let number = e.msg.match(/\d+/)
|
40 |
+
if (number) {
|
41 |
+
number = Number(number[0])
|
42 |
+
number = number < 2 ? 2 : number > 10 ? 10 : number
|
43 |
+
} else {
|
44 |
+
number = 1
|
45 |
+
}
|
46 |
+
for (let i = 0; i < number; i++) {
|
47 |
+
let flag = 1
|
48 |
+
img = await getImg(e)
|
49 |
+
if (!img.includes('http')) {
|
50 |
+
img = 'https:' + img
|
51 |
+
}
|
52 |
+
|
53 |
+
if (i == 0) {
|
54 |
+
res.push(img)
|
55 |
+
image.push(segment.image(img))
|
56 |
+
} else {
|
57 |
+
for (let val of res) {
|
58 |
+
if (val == img) {
|
59 |
+
flag = 0
|
60 |
+
}
|
61 |
+
}
|
62 |
+
if (flag == 1) {
|
63 |
+
image.push(segment.image(img))
|
64 |
+
} else {
|
65 |
+
number++
|
66 |
+
}
|
67 |
+
}
|
68 |
+
|
69 |
+
}
|
70 |
+
//logger.mark(number)
|
71 |
+
if(e.isGroup) {
|
72 |
+
number > 1 ? common.getforwardMsg(e, image, '点击显示随机涩图', 0, false, true) : e.reply(image)
|
73 |
+
}else{
|
74 |
+
for (let i = 0; i < image.length; i++){
|
75 |
+
e.reply(image[i])
|
76 |
+
}
|
77 |
+
}
|
78 |
+
}
|
79 |
+
}
|
80 |
+
|
81 |
+
async function getImg(e) {
|
82 |
+
let res = await response()
|
83 |
+
let i = 0
|
84 |
+
while (!res && i < apis.length) {
|
85 |
+
res = await response()
|
86 |
+
i++
|
87 |
+
}
|
88 |
+
if (i > apis.length) return e.reply('接口失效')
|
89 |
+
let img = res.img || res.imgurl || res.pic?.[0] || res
|
90 |
+
return img
|
91 |
+
}
|
92 |
+
|
93 |
+
|
94 |
+
async function response() {
|
95 |
+
let num = Math.round(Math.random() * (useapi.length - 1))
|
96 |
+
logger.warn(`尝试请求接口:${useapi[num]}`)
|
97 |
+
try {
|
98 |
+
let res = await fetch(useapi[num])
|
99 |
+
if (!res.ok) {
|
100 |
+
logger.warn(useapi[num] + ',接口失效')
|
101 |
+
useapi.splice(num, 1)
|
102 |
+
return false
|
103 |
+
}
|
104 |
+
if (res.headers.get('content-type').includes('json')) {
|
105 |
+
res = await res.json()
|
106 |
+
return res
|
107 |
+
}
|
108 |
+
return useapi[num]
|
109 |
+
} catch (err) {
|
110 |
+
logger.warn(useapi[num] + ',接口失效')
|
111 |
+
useapi.splice(num, 1)
|
112 |
+
return false
|
113 |
+
}
|
114 |
+
}
|