mirror of
https://github.com/qitoqito/psyduck.git
synced 2026-01-13 05:50:43 +08:00
88 lines
3.3 KiB
JavaScript
88 lines
3.3 KiB
JavaScript
import {Template} from '../../template.js'
|
|
|
|
export class Main extends Template {
|
|
constructor() {
|
|
super()
|
|
this.profile = {
|
|
title: '京东取消商品收藏',
|
|
delay: 1200,
|
|
interval: 3000,
|
|
prompt: {
|
|
whiteList: '保留关键词,关键词1|关键词2',
|
|
blackList: '只删除关键词,关键词1|关键词2',
|
|
},
|
|
}
|
|
}
|
|
|
|
async prepare() {
|
|
}
|
|
|
|
async main(p) {
|
|
let user = p.data.user;
|
|
let context = p.context;
|
|
let page = 1
|
|
for (let i = 0; i<6; i++) {
|
|
let s = await this.curl({
|
|
'url': `https://api.m.jd.com/?appid=jd-cphdeveloper-m&functionId=queryFollowProduct&body={"cp":${page},"pageSize":20,"category":"","promote":0,"cutPrice":0,"coupon":0,"stock":0,"tenantCode":"jgm","bizModelCode":"6","bizModeClientType":"M","externalLoginType":"1"}&loginType=2&uuid=40501164094171678865533299&openudid=40501164094171678865533299&sceneval=2&g_login_type=1&g_tk=646642342&g_ty=ajax&appCode=msd95910c4`,
|
|
user,
|
|
algo: {
|
|
appId: "c420a",
|
|
status: true,
|
|
expire: {
|
|
"errorCode": 101
|
|
}
|
|
}
|
|
}
|
|
)
|
|
if (this.haskey(s, 'followProductList')) {
|
|
p.log("当前商品收藏数:", s.totalNum)
|
|
if (s.totalNum>0) {
|
|
page = Math.ceil(s.totalNum / 20)>1 ? this.rand(1, Math.ceil(s.totalNum / 20)) : 1
|
|
// commTitle
|
|
if (this.profile.whiteList) {
|
|
let whiteList = this.profile.whiteList
|
|
var data = s.followProductList.filter(d => !d.commTitle.match(whiteList))
|
|
}
|
|
else if (this.profile.blackList) {
|
|
let blackList = this.profile.blackList
|
|
var data = s.followProductList.filter(d => d.commTitle.match(blackList))
|
|
}
|
|
else {
|
|
var data = s.followProductList
|
|
}
|
|
if (data.length>0) {
|
|
p.log(`正在删除:`, this.column(data, 'commTitle').join("|"))
|
|
let rm = await this.curl({
|
|
'url': `https://api.m.jd.com/api?functionId=batchCancelFavorite&body={"skus":"${this.column(data, 'commId').join(",")}"}&appid=follow_for_concert&client=pc`,
|
|
user
|
|
}
|
|
)
|
|
p.log(rm.resultMsg)
|
|
p.info.work = true
|
|
}
|
|
else {
|
|
break
|
|
}
|
|
}
|
|
else {
|
|
p.log("没有获取关注数据")
|
|
break
|
|
}
|
|
if (s.totalNum<20) {
|
|
break
|
|
}
|
|
}
|
|
else if (this.haskey(s, 'totalNum', 0)) {
|
|
p.log("没有可删除的收藏")
|
|
p.info.work = true
|
|
break
|
|
}
|
|
else {
|
|
p.log("可能黑ip了,没有获取到数据")
|
|
break
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|