mirror of
https://github.com/shanmiteko/LotteryAutoScript.git
synced 2026-06-12 21:03:13 +08:00
feat: 随机动态改为两张瑟图
This commit is contained in:
parent
94889ef91c
commit
296cfa3e3e
62
lib/Base.js
62
lib/Base.js
@ -1,4 +1,3 @@
|
||||
const { load } = require('cheerio');
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const { HttpRequest } = require("./HttpRequest");
|
||||
@ -86,62 +85,27 @@ const Base = {
|
||||
return arr[parseInt(Math.random() * arr.length)];
|
||||
},
|
||||
/**
|
||||
* 一言接口
|
||||
* @returns {Promise<string>}
|
||||
*
|
||||
* @returns {Promise<import("./BiliAPI").Pictures[]>}
|
||||
*/
|
||||
getHiToKoTo() {
|
||||
return new Promise(resolve => {
|
||||
getPictures: () => {
|
||||
return new Promise((resolve, reject) => {
|
||||
HttpRequest({
|
||||
method: 'GET',
|
||||
url: 'https://v1.hitokoto.cn/',
|
||||
query: {
|
||||
encode: 'json',
|
||||
c: 'i'
|
||||
},
|
||||
headers: {
|
||||
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36',
|
||||
Accept: 'text/plain, */*',
|
||||
url: 'https://gitee.com/shanmite/lottery-notice/raw/master/pictures.json',
|
||||
config: {
|
||||
retry: false,
|
||||
},
|
||||
success: res => {
|
||||
const { hitokoto } = Base.strToJson(res.body);
|
||||
if (hitokoto) {
|
||||
resolve(hitokoto)
|
||||
} else {
|
||||
resolve('[doge][doge][doge]')
|
||||
try {
|
||||
let { img_src } = JSON.parse(res.body);
|
||||
resolve([0, 0].map(() => img_src[~~(Math.random() * img_src.length)]))
|
||||
} catch (_) {
|
||||
reject('[doge][doge][doge]')
|
||||
}
|
||||
},
|
||||
failure: () => {
|
||||
resolve('[doge][doge][doge]')
|
||||
}
|
||||
})
|
||||
});
|
||||
},
|
||||
/**
|
||||
* 知乎热榜接口
|
||||
* @returns {Promise<string[]>}
|
||||
*/
|
||||
getZhihuBillBoard() {
|
||||
return new Promise((resolve) => {
|
||||
HttpRequest({
|
||||
method: 'GET',
|
||||
url: 'https://www.zhihu.com/billboard',
|
||||
headers: {
|
||||
Accept: 'text/html, text/plain, */*',
|
||||
},
|
||||
success: res => {
|
||||
const $ = load(res.body);
|
||||
const ret = Array.from($('.HotList-itemTitle').map((_, ele) => {
|
||||
return $(ele).text()
|
||||
}))
|
||||
if (ret.length) {
|
||||
resolve(ret)
|
||||
} else {
|
||||
resolve('[tv_doge][tv_doge][tv_doge]')
|
||||
}
|
||||
},
|
||||
failure: err => {
|
||||
console.log(err)
|
||||
resolve('[tv_doge][tv_doge][tv_doge]')
|
||||
reject('[doge][doge][doge]')
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
@ -482,20 +482,36 @@ const BiliAPI = {
|
||||
});
|
||||
},
|
||||
/**
|
||||
* 发布一条无图的动态
|
||||
* @typedef Pictures
|
||||
* @property {string} img_src
|
||||
* 发布一条动态
|
||||
* @param {string} content
|
||||
* @param {Array<Pictures>} pictures
|
||||
*/
|
||||
createDynamic: content => {
|
||||
createDynamic: (content, pictures) => {
|
||||
let data = {
|
||||
csrf: GlobalVar.csrf,
|
||||
extension: '{"emoji_type":1,"from":{"emoji_type":1},"flag_cfg":{}}'
|
||||
}
|
||||
if (content) {
|
||||
data = {
|
||||
...data,
|
||||
content,
|
||||
}
|
||||
}
|
||||
if (pictures) {
|
||||
data = {
|
||||
...data,
|
||||
biz: 3,
|
||||
category: 3,
|
||||
pictures: JSON.stringify(pictures)
|
||||
}
|
||||
}
|
||||
Ajax.post({
|
||||
url: 'https://api.vc.bilibili.com/dynamic_svr/v1/dynamic_svr/create',
|
||||
hasCookies: true,
|
||||
dataType: 'application/x-www-form-urlencoded',
|
||||
data: {
|
||||
content,
|
||||
type: 4,
|
||||
extension: '{"emoji_type":1,"from":{"emoji_type":1},"flag_cfg":{}}',
|
||||
csrf: GlobalVar.csrf
|
||||
},
|
||||
data,
|
||||
success: responseText => {
|
||||
if (/^{"code":0/.test(responseText)) {
|
||||
console.log('[发布动态]成功创建一条随机内容的动态');
|
||||
|
||||
@ -66,15 +66,14 @@ function start() {
|
||||
function createRandomDynamic() {
|
||||
Public.prototype.checkAllDynamic(GlobalVar.myUID, 1).then(Dynamic => {
|
||||
if (Dynamic.allModifyDynamicResArray[0].type === 1) {
|
||||
if (Date.now() % 11) {
|
||||
Base.getHiToKoTo().then(sentence => {
|
||||
BiliAPI.createDynamic(sentence);
|
||||
})
|
||||
} else {
|
||||
Base.getZhihuBillBoard().then(billboard => {
|
||||
BiliAPI.createDynamic(billboard[~~(Math.random() * 11)]);
|
||||
})
|
||||
}
|
||||
Base.getPictures().then(
|
||||
(pic) => {
|
||||
BiliAPI.createDynamic('', pic);
|
||||
},
|
||||
(con) => {
|
||||
BiliAPI.createDynamic(con);
|
||||
}
|
||||
)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
120
package-lock.json
generated
120
package-lock.json
generated
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "lottery-in-bilibili",
|
||||
"version": "1.1.0",
|
||||
"version": "2.1.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
@ -145,11 +145,6 @@
|
||||
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz",
|
||||
"integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM="
|
||||
},
|
||||
"boolbase": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
|
||||
"integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24="
|
||||
},
|
||||
"brace-expansion": {
|
||||
"version": "1.1.11",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||
@ -234,32 +229,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"cheerio": {
|
||||
"version": "1.0.0-rc.5",
|
||||
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.5.tgz",
|
||||
"integrity": "sha512-yoqps/VCaZgN4pfXtenwHROTp8NG6/Hlt4Jpz2FEP0ZJQ+ZUkVDd0hAPDNKhj3nakpfPt/CNs57yEtxD1bXQiw==",
|
||||
"requires": {
|
||||
"cheerio-select-tmp": "^0.1.0",
|
||||
"dom-serializer": "~1.2.0",
|
||||
"domhandler": "^4.0.0",
|
||||
"entities": "~2.1.0",
|
||||
"htmlparser2": "^6.0.0",
|
||||
"parse5": "^6.0.0",
|
||||
"parse5-htmlparser2-tree-adapter": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"cheerio-select-tmp": {
|
||||
"version": "0.1.1",
|
||||
"resolved": "https://registry.npmjs.org/cheerio-select-tmp/-/cheerio-select-tmp-0.1.1.tgz",
|
||||
"integrity": "sha512-YYs5JvbpU19VYJyj+F7oYrIE2BOll1/hRU7rEy/5+v9BzkSo3bK81iAeeQEMI92vRIxz677m72UmJUiVwwgjfQ==",
|
||||
"requires": {
|
||||
"css-select": "^3.1.2",
|
||||
"css-what": "^4.0.0",
|
||||
"domelementtype": "^2.1.0",
|
||||
"domhandler": "^4.0.0",
|
||||
"domutils": "^2.4.4"
|
||||
}
|
||||
},
|
||||
"color-convert": {
|
||||
"version": "1.9.3",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
|
||||
@ -296,23 +265,6 @@
|
||||
"which": "^2.0.1"
|
||||
}
|
||||
},
|
||||
"css-select": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/css-select/-/css-select-3.1.2.tgz",
|
||||
"integrity": "sha512-qmss1EihSuBNWNNhHjxzxSfJoFBM/lERB/Q4EnsJQQC62R2evJDW481091oAdOr9uh46/0n4nrg0It5cAnj1RA==",
|
||||
"requires": {
|
||||
"boolbase": "^1.0.0",
|
||||
"css-what": "^4.0.0",
|
||||
"domhandler": "^4.0.0",
|
||||
"domutils": "^2.4.3",
|
||||
"nth-check": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"css-what": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/css-what/-/css-what-4.0.0.tgz",
|
||||
"integrity": "sha512-teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A=="
|
||||
},
|
||||
"debug": {
|
||||
"version": "4.3.1",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
|
||||
@ -337,39 +289,6 @@
|
||||
"esutils": "^2.0.2"
|
||||
}
|
||||
},
|
||||
"dom-serializer": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.2.0.tgz",
|
||||
"integrity": "sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA==",
|
||||
"requires": {
|
||||
"domelementtype": "^2.0.1",
|
||||
"domhandler": "^4.0.0",
|
||||
"entities": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"domelementtype": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz",
|
||||
"integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w=="
|
||||
},
|
||||
"domhandler": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.0.0.tgz",
|
||||
"integrity": "sha512-KPTbnGQ1JeEMQyO1iYXoagsI6so/C96HZiFyByU3T6iAzpXn8EGEvct6unm1ZGoed8ByO2oirxgwxBmqKF9haA==",
|
||||
"requires": {
|
||||
"domelementtype": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"domutils": {
|
||||
"version": "2.4.4",
|
||||
"resolved": "https://registry.npmjs.org/domutils/-/domutils-2.4.4.tgz",
|
||||
"integrity": "sha512-jBC0vOsECI4OMdD0GC9mGn7NXPLb+Qt6KW1YDQzeQYRUFKmNG8lh7mO5HiELfr+lLQE7loDVI4QcAxV80HS+RA==",
|
||||
"requires": {
|
||||
"dom-serializer": "^1.0.1",
|
||||
"domelementtype": "^2.0.1",
|
||||
"domhandler": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"duplexer2": {
|
||||
"version": "0.1.4",
|
||||
"resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
|
||||
@ -393,11 +312,6 @@
|
||||
"ansi-colors": "^4.1.1"
|
||||
}
|
||||
},
|
||||
"entities": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz",
|
||||
"integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w=="
|
||||
},
|
||||
"escape-string-regexp": {
|
||||
"version": "1.0.5",
|
||||
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
|
||||
@ -670,17 +584,6 @@
|
||||
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
|
||||
"dev": true
|
||||
},
|
||||
"htmlparser2": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.0.0.tgz",
|
||||
"integrity": "sha512-numTQtDZMoh78zJpaNdJ9MXb2cv5G3jwUoe3dMQODubZvLoGvTE/Ofp6sHvH8OGKcN/8A47pGLi/k58xHP/Tfw==",
|
||||
"requires": {
|
||||
"domelementtype": "^2.0.1",
|
||||
"domhandler": "^4.0.0",
|
||||
"domutils": "^2.4.4",
|
||||
"entities": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"ignore": {
|
||||
"version": "4.0.6",
|
||||
"resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
|
||||
@ -840,14 +743,6 @@
|
||||
"integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
|
||||
"dev": true
|
||||
},
|
||||
"nth-check": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz",
|
||||
"integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==",
|
||||
"requires": {
|
||||
"boolbase": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"once": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
@ -879,19 +774,6 @@
|
||||
"callsites": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"parse5": {
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
|
||||
"integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw=="
|
||||
},
|
||||
"parse5-htmlparser2-tree-adapter": {
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz",
|
||||
"integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==",
|
||||
"requires": {
|
||||
"parse5": "^6.0.1"
|
||||
}
|
||||
},
|
||||
"path-is-absolute": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
|
||||
@ -29,7 +29,6 @@
|
||||
"eslint": "^7.17.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"cheerio": "^1.0.0-rc.5",
|
||||
"unzipper": "^0.10.11"
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user