lintonxue00 commited on
Commit
a45f3fe
1 Parent(s): 7e84625

Upload randomimages.js

Browse files
Files changed (1) hide show
  1. 不知道/回收站/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
+ }