diff --git a/src/main/resources/filter.txt b/src/main/resources/filter.txt
index 7a79324..37f3f20 100644
--- a/src/main/resources/filter.txt
+++ b/src/main/resources/filter.txt
@@ -10,6 +10,7 @@ HPV
KB216有线键盘
KVM切换器
LED
+MASIL 玛丝兰韩国三次方氨基酸洗发水便携旅行装8ml去屑控油(8ml*20条/盒)
MS116 有线鼠标
N1162有线鼠标
Ockered
@@ -18,9 +19,13 @@ SD
SD卡
SMOVES
SUP掌机
+SeeHe喜氢485ml瓶装 含氢饮用水 富氢水 水素水 弱碱性 办公室用水 12瓶装
+THISE利斯欧洲原装进口全脂纯牛奶500ml高钙有机健康高端奶
+TIMESWIND天然新疆玉多彩葫芦莲花手串戈壁玉黄玉古风个性女款玉石手链 玉莲花珠葫芦手链
T口弯头
U盘
VGA
+a1雪绒蛋糕550g早餐食品小面包蒸蛋糕 a1雪绒蛋糕550g
hdmi
hpv
led开关电源
@@ -85,11 +90,13 @@ windows
保护贴膜
保护镜
保暖女裤
+保暖背心
保暖裤
保温棉
保鲜膜
信封
信纸
+修复乳
修护
修正带
修眉
@@ -252,6 +259,7 @@ windows
唇釉
唑溶液
商务休闲
+啡趣精品挂耳咖啡现磨美式黑咖啡无糖滤挂式手冲咖啡粉新鲜烘焙风味原产地新朋友入会礼盒装
啪啪
喷壶
喷雾器
@@ -293,6 +301,7 @@ windows
壁纸
声卡套装
复合肥
+外包税
外用
多功能尺子
多色笔
@@ -300,8 +309,10 @@ windows
天线
头皮
夹
+奥咖云南特产贡菊茶40g/罐无硫天然生态贡菊茶罐装
女士内裤
女士内裤,少女内裤
+女士香水三件套装淡香清新自由之水反转巴黎香水礼盒套装情人节生日礼物节日送礼 【黑鸦片香水三件套/每瓶30ml】
女童裤子
女童靴子
奶瓶
@@ -325,6 +336,7 @@ windows
定做
定做榻榻米
定制
+宝佩 印尼五瓣小金刚菩提子双龙肉纹国潮复古单圈手链文玩佛珠手串男女 松石款
宝塔糖
宝宝儿童零食
宝宝口罩
@@ -336,6 +348,7 @@ windows
宝宝霜
宝宝鞋子
宝珠笔
+宝藏驼 猴头菇驼奶饼干代餐膳食纤维休闲零食小吃独立包装开袋即食饼干400g*1盒
实验课
宠物
宣纸
@@ -363,6 +376,7 @@ windows
尺
尼龙管
尼龙网
+尾灯膜
尿
尿素
尿素霜
@@ -390,11 +404,13 @@ windows
底座
座垫
座套
+康佳(KONKA)燃气灶单眼灶具 5.0KW猛火台式单灶液化气灶 家用不锈钢大火力灶台 JZY-D502Y(液化气)
康复
延时
延迟
延迟喷雾
延长器
+开关盒
开果器
弹力绳
弹簧
@@ -530,6 +546,7 @@ windows
日历
早教
晚安茶
+晨铭轩
替换头
月子
有机肥
@@ -547,6 +564,7 @@ windows
染发剂
柔肤水
柜吸
+柯梦迪( Chredina)国潮无线充电器华为苹果通用桌面卡通图案迷你便携式 玲珑CR-W09 Type-C输入(安卓10W/苹果7.5W)
栀子茶
栅网
标志牌
@@ -570,6 +588,7 @@ windows
樱の色鱼子酱
欧布圣剑
止痒
+正宗内蒙古羊肉卷 羔羊卷 涮火锅食材火锅料 1000g羊肉卷
死皮
母乳
毛囊
@@ -584,6 +603,7 @@ windows
水平仪
水晶头
水晶泥
+水果泥
水枪
水泥
水管保温套
@@ -597,6 +617,7 @@ windows
汽车摆件
汽车椅背
汽车脚垫
+汽车车灯
沉香
沐浴包
油壶
@@ -622,6 +643,7 @@ windows
测试
浮标
浮漂
+海狸先生
涂鸦贴纸
消化不良
消化道出血
@@ -662,6 +684,7 @@ windows
灭蝇
灭鼠
灯泡
+灯膜
灶台贴纸
炎膏贴
炖盅
@@ -672,6 +695,7 @@ windows
热熔胶枪
煤油
燃气报警器
+燮乐
爬爬垫
爸爸装
爸爸鞋
@@ -687,6 +711,8 @@ windows
牙线
牙膏
牛仔裤
+牛杂牛肚牛百叶白千层毛肚丝黑毛肚配菜批发新鲜火锅食材 1000g白千层
+牛杂牛肚牛百叶白千层毛肚丝黑毛肚配菜批发新鲜火锅食材 1000g黑毛肚丝
牛舌
牵引器
犬粮
@@ -760,6 +786,7 @@ windows
皮筋枪
益生菌
监狱
+盖世 美人唇杏鲍菇木耳海茸/裙带菜150g*4袋 解冻即食 海鲜水产
盘香
眉笔
真空袋
@@ -784,6 +811,7 @@ windows
砂锅
砍柴刀
砍菜刀
+破壳茶叶poke福建安溪铁观音浓香型圆罐装散茶100g
硅胶
硬笔
碎发
@@ -815,6 +843,7 @@ windows
筋骨贴
筒灯
筷子
+筹划税
签字笔
米小芽
类纸膜
@@ -853,6 +882,7 @@ windows
绿草皮
网卡
网线
+羊蝎子批发现杀羊脊骨内蒙古新鲜火锅食材 羊蝎子1000g
美容棒
美容油
美容院
@@ -885,6 +915,7 @@ windows
胖子
胶囊
胶带
+胶枪
胸包
胸针
脖套
@@ -903,6 +934,7 @@ windows
自慰
自拍杆
舒缓水
+舟山 黄花鱼新鲜冷冻 小黄鱼海鲜水产 清蒸红烧烧烤油炸皆可 整箱六斤装中号黄花鱼
色料
艾叶
艾条
@@ -911,6 +943,7 @@ windows
艾胜者
艾脐贴
艾草
+芊乔珠宝
芦荟
花洒
花瓶
@@ -924,11 +957,16 @@ windows
茶壶
茶宠
茶杯
+荧光笔
莆田官网
+莘月
菊粉
菊花茶
菜罩
菲妮小熊
+萨瑞斯
+落花啼春
+落花啼春 吊坠女佛公弥勒笑佛玉坠玉石阿富汗项链挂坠玉佩玉器
葛根
蒲公英茶
虾青素
@@ -963,6 +1001,7 @@ windows
触控笔
警示牌
订书机
+订账本
训练器
评估检测
试听课
@@ -1023,6 +1062,8 @@ windows
避孕套
酒
酵素
+野生金鲳鱼大号新鲜冷冻鲜活白鲳鱼海昌鱼平鱼海鲜水产 大号金鲳鱼*1条(约8两-1斤)
+野铺子雪媚娘蛋黄酥6枚装 野铺子蛋黄酥【6枚装】
金刚胶
金属合金
金属探测
@@ -1089,6 +1130,7 @@ windows
隔离网
隔离霜
隔音耳塞
+雅翔仕
雕刻工具
雨刮
雨披
@@ -1143,6 +1185,7 @@ windows
鹿鞭
麦克风
黄冈
+黄海大鲅鱼新鲜鲅鱼鲅鱼整条鲅鱼马鲛鱼批发野生海捕鲅鱼 小号鲅鱼2500g(6两-8两/条)
黄膏贴
黄金卡
黑头
diff --git a/src/main/resources/pay_filter.txt b/src/main/resources/pay_filter.txt
index 7727c5d..1cc57bf 100644
--- a/src/main/resources/pay_filter.txt
+++ b/src/main/resources/pay_filter.txt
@@ -20,4 +20,31 @@ Apple苹果耳机线控带麦手机耳机12/13耳塞入耳式XR耳机有线iPhon
泸州老窖股份公司出品 泸州传奇经典系列 财兴福旺475ML单瓶装
全麦面包代餐吐司切片0脂肪0蔗糖健身粗粮面包片轻食早餐零食整箱装 真全麦0脂肪0蔗糖代餐面包 整箱1 真全麦0脂0蔗糖代餐面包 整箱1斤装(约24片)
晨铭轩女款玉石挂件项坠玉坠子白玉髓平安扣吊坠男女款送礼物情侣弥勒佛观音项链挂 白色小玉髓平安扣
-燮乐 圆形莫桑钻D色VVS净度裸石 K金镶嵌精选裸钻 完美切工 八心八箭高档莫桑石品质 30分裸钻(D色/VVS1/3EX八心八箭)
\ No newline at end of file
+燮乐 圆形莫桑钻D色VVS净度裸石 K金镶嵌精选裸钻 完美切工 八心八箭高档莫桑石品质 30分裸钻(D色/VVS1/3EX八心八箭)
+适用于斯柯达柯珞克吉利帝豪GS汽车挂件玉石貔貅饰品高档后视镜吊坠出入平安符车内挂饰水晶葫芦 葫芦 找不到的车型请点这里下单留言备注
+宝藏驼 猴头菇驼奶饼干代餐膳食纤维休闲零食小吃独立包装开袋即食饼干400g*1盒
+THISE利斯欧洲原装进口全脂纯牛奶500ml高钙有机健康高端奶
+羊蝎子批发现杀羊脊骨内蒙古新鲜火锅食材 羊蝎子1000g
+牛杂牛肚牛百叶白千层毛肚丝黑毛肚配菜批发新鲜火锅食材 1000g黑毛肚丝
+牛杂牛肚牛百叶白千层毛肚丝黑毛肚配菜批发新鲜火锅食材 1000g白千层
+黄海大鲅鱼新鲜鲅鱼鲅鱼整条鲅鱼马鲛鱼批发野生海捕鲅鱼 小号鲅鱼2500g(6两-8两/条)
+正宗内蒙古羊肉卷 羔羊卷 涮火锅食材火锅料 1000g羊肉卷
+野生金鲳鱼大号新鲜冷冻鲜活白鲳鱼海昌鱼平鱼海鲜水产 大号金鲳鱼*1条(约8两-1斤)
+舟山 黄花鱼新鲜冷冻 小黄鱼海鲜水产 清蒸红烧烧烤油炸皆可 整箱六斤装中号黄花鱼
+野生金鲳鱼大号新鲜冷冻鲜活白鲳鱼海昌鱼平鱼海鲜水产 大号金鲳鱼*1条(约8两-1斤)
+TIMESWIND天然新疆玉多彩葫芦莲花手串戈壁玉黄玉古风个性女款玉石手链 玉莲花珠葫芦手链
+落花啼春 吊坠女佛公弥勒笑佛玉坠玉石阿富汗项链挂坠玉佩玉器
+SeeHe喜氢485ml瓶装 含氢饮用水 富氢水 水素水 弱碱性 办公室用水 12瓶装
+啡趣精品挂耳咖啡现磨美式黑咖啡无糖滤挂式手冲咖啡粉新鲜烘焙风味原产地新朋友入会礼盒装
+奥咖云南特产贡菊茶40g/罐无硫天然生态贡菊茶罐装
+野铺子雪媚娘蛋黄酥6枚装 野铺子蛋黄酥【6枚装】
+宝佩 印尼五瓣小金刚菩提子双龙肉纹国潮复古单圈手链文玩佛珠手串男女 松石款
+a1雪绒蛋糕550g早餐食品小面包蒸蛋糕 a1雪绒蛋糕550g
+破壳茶叶poke福建安溪铁观音浓香型圆罐装散茶100g
+女士香水三件套装淡香清新自由之水反转巴黎香水礼盒套装情人节生日礼物节日送礼 【黑鸦片香水三件套/每瓶30ml】
+盖世 美人唇杏鲍菇木耳海茸/裙带菜150g*4袋 解冻即食 海鲜水产
+康佳(KONKA)燃气灶单眼灶具 5.0KW猛火台式单灶液化气灶 家用不锈钢大火力灶台 JZY-D502Y(液化气)
+MASIL 玛丝兰韩国三次方氨基酸洗发水便携旅行装8ml去屑控油(8ml*20条/盒)
+宝藏驼 猴头菇驼奶饼干代餐膳食纤维休闲零食小吃独立包装开袋即食饼干400g*1盒
+THISE利斯欧洲原装进口全脂纯牛奶500ml高钙有机健康高端奶
+柯梦迪( Chredina)国潮无线充电器华为苹果通用桌面卡通图案迷你便携式 玲珑CR-W09 Type-C输入(安卓10W/苹果7.5W)
\ No newline at end of file
diff --git a/src/main/resources/test_trytryOne.js b/src/main/resources/test_trytryOne.js
index 4950ff5..fe5b76b 100644
--- a/src/main/resources/test_trytryOne.js
+++ b/src/main/resources/test_trytryOne.js
@@ -81,7 +81,7 @@ let args_xh = {
* 试用商品标题过滤
* 可设置环境变量:JD_TRY_TITLEFILTERS,关键词与关键词之间用@分隔
* */
- titleFilters: ["咳嗽","双黄连","代餐奶昔","钥匙套", "胖大海","菊花茶","手机充电线","刺梨糕","苦荞茶","拌饭海苔","丁香茶","吸油纸","晚安茶","金属合金","手电","宿便","纤维素","玛咖茶","书法", "决明子", "钢化膜", "保护贴膜", "手机壳", "自拍杆", "养生茶", "玉米须", "栀子茶", "黑芝麻丸", "赛柏瑞斯", "玫瑰花茶", "品雅有机茶", "雷气日式", "先徽葱油", "德生源氨基酸洗发水", "决明子茶", "悠悠球", "人参五宝茶", "遥控器", "蒲公英茶", "烘焙纸杯", "称斤积木", "拨浪鼓", "打包袋子", "按摩球", "帆睿", "登山包", "抵用券", "急救箱", "染头发膏", "变唇膏", "弹力带", "儿童零食", "儿童剪头发工具", "平剪牙剪刀打薄剪刀", "刘海内扣直发器", "益生菌小E条漱口水", "二锅头", "魔法士干脆面方便面24袋整箱装", "樱の色鱼子酱", "轻酸瓶3%", "青汁", "隔离霜", "去枣核", "川品社", "矶钓钓鱼配件", "棉线结矶杆", "半圆滑漂挡", "远投路滑配件", "滑漂座", "软电线", "激光剑", "灭鼠", "思维棋", "双层片", "猫用", "鼻腔喷雾", "电脑包", "鸥曼GTL", "卧铺毛毯", "双导向", "翻页笔", "蛋白肽", "T口弯头", "货车用品", "床垫套", "电焊护脚", "G100", "擦车清洁工具", "掸子", "射灯", "欧布圣剑", "超比乐", "滚梳直柄", "凝胶糖果", "DHA藻油", "水带", "摘果神器", "宝宝儿童零食", "总复习", "满分冲刺", "黄冈", "小状元", "钓鱼插件", "寒假作业", "作业", "菜罩", "手机线", "美容油", "贺卡", "眼贴", "小斗篷", "小孩子演奏", "砍柴刀", "消防应急灯", "食用色素", "烘焙彩针糖果", "德尔地板", "水管保温套", "水管道", "定位器", "追踪器", "电瓶", "快递纸箱", "尤克里里", "金龙鱼 面条挂面", "痛风", "KVM切换器", "水泥", "猫罐头", "去斑霜", "0-12岁", "4/3膜", "FMJ", "H10E", "HDMI", "HEISHA", "HPV", "KB216有线键盘", "LED", "MS116 有线鼠标", "N1162有线鼠标", "Ockered", "PVC板", "SD", "SD卡", "SMOVES", "SUP掌机", "U盘", "VGA", "hdmi", "hpv", "led开关电源", "uv镜", "win10", "windows", "一次性", "一片装", "一盒", "万向滑轮", "万用表", "万藓灵", "三角阀", "三轮车", "不干胶标签带", "专升本", "专用贴", "丝袜", "中国电信", "中国结", "中央扶手箱", "中性水笔", "中性笔", "中老年", "丰胸", "串珠玩具", "丸", "乒乓球", "九九乘法", "九九乘除", "书包", "乳液", "乳腺", "交换", "交换机", "产品体验", "享底价", "亲子互动", "亿优信", "仓鼠零食", "仿真小蛋糕", "伊威", "优盘", "会员", "会员卡", "会议杯子", "会议记录", "传菜铃", "体温计", "体验装", "侧挂式", "便秘", "保健", "保护壳", "保护套", "保护膜", "保护镜", "保暖女裤", "保暖裤", "保温棉", "保鲜膜", "信封", "信纸", "修护", "修正带", "修眉", "修眉剪", "倒车", "倒车镜", "假发", "假睫毛", "停车牌", "健康检测", "储奶袋", "儿童n95", "儿童串珠玩具", "儿童乐园", "儿童便捷", "儿童保温水杯", "儿童医生", "儿童口罩", "儿童吸管", "儿童奶粉", "儿童成长", "儿童拌饭", "儿童暖暖套", "儿童椅子", "儿童沐浴露", "儿童牙膏", "儿童玩具枪", "儿童电动牙刷", "儿童电话手表", "儿童益生菌", "儿童磨牙饼", "儿童背包", "儿童随身", "儿童雨伞", "充电头", "充电桩", "光和青春", "光驱", "免钉胶水", "八倍镜", "公主项链", "公文包", "养芝堂", "内胆包", "内衣", "内裤", "冰箱贴", "冰袋", "冷兵器", "冷凝胶", "冷敷贴", "冻干粉", "净水剂", "减关镜", "减肥", "凳子套", "刀头", "刀片", "分流", "分流器", "分线盒", "切割片", "切菜板", "创可贴", "刨木", "别针", "刮痧", "刮痧板", "刷头", "刷子", "刷牙头", "刹车油", "刺激贴", "剂", "剃须刀配件", "削皮刀", "前列腺", "剥虾", "剪", "剪钳", "割草机", "办公会议茶杯", "办公宝", "办公杯", "加密狗", "加温器", "勿拍", "包皮", "包装膜", "化妆", "匙扣", "医生", "半身不遂", "半身裙", "单拍不发货", "卡册", "卡套", "卡尺", "卡托", "卡牌", "卡针", "卧铺垫", "卸妆", "卸妆水", "压差表", "压片", "去毛器", "去角质", "参肽片", "双面板", "反光条贴", "反光板", "反光贴", "反光镜", "反弹器", "变身器", "口琴", "口红", "口罩", "口罩盒", "口腔", "口腔抑菌", "口香糖", "台灯", "台账本", "号码卡", "吃饭衣", "合成机油", "同仁堂", "后膜", "启动电源", "吸奶器", "吸顶灯", "告知牌", "周岁", "呼噜", "咖啡豆", "咬钩", "咽炎", "哑光", "哨", "哺乳", "哺乳套装", "唇釉", "唑溶液", "商务休闲", "啪啪", "喷壶", "喷雾器", "嚼片", "园艺工具", "围兜", "围裙", "固定器", "图钉", "圆珠笔", "土工布", "圣杯", "在线直播", "地吸", "地桩", "地漏", "地面清洁液", "坐便器", "坐便椅", "坐垫", "坐骨膏", "垃圾处理器", "垃圾袋", "垫片", "培训", "塑料士兵小军人玩具", "塑料杯", "塑身裤", "塔菲克", "墙纸", "增生贴", "增高", "墨块", "墨条", "墨水", "墨盒", "墨粉", "墨镜", "壁纸", "声卡套装", "复合肥", "外用", "多功能尺子", "多色笔", "大头围", "天线", "头皮", "夹", "女士内裤", "女士内裤,少女内裤", "女童裤子", "女童靴子", "奶瓶", "奶粉", "如意碗", "妆", "妇女", "婴儿", "婴幼儿", "孔明锁", "孕妇装", "存储卡", "学习卡", "学历", "学生文具", "孩儿乐", "安全帽", "安全裤", "安全锤", "定位器", "定做", "定做榻榻米", "定制", "宝塔糖", "宝宝口罩", "宝宝奶粉", "宝宝成长", "宝宝灯笼裤", "宝宝牙刷", "宝宝玩具车", "宝宝霜", "宝宝鞋子", "宝珠笔", "实验课", "宠物", "宣纸", "宫颈炎", "密封条", "密封袋", "密码锁", "富贵包", "对接头", "导购", "封口机", "小兔女士", "小勺子", "小塔糖", "小学", "少儿读物", "尤尖锐湿疣", "尺", "尼龙管", "尼龙网", "尿", "尿素", "尿素霜", "屏幕膜", "屏蔽袋", "屏风", "工作手册", "工作服", "巾", "布袋", "帽子", "幕布", "干洗剂", "干眼症", "干裂", "平光镜", "平衡线", "幼儿", "幼儿园", "幼儿配方", "床头台灯", "底座", "座垫", "座套", "康复", "延时", "延迟", "延迟喷雾", "延长器", "开果器", "弹力绳", "弹簧", "彩带", "彩铅", "徽墨", "情趣", "惯性小汽车", "成人票", "成长裤", "戒奶嘴", "戒烟", "手册", "手动幕", "手套", "手工DIY", "手工黏土", "手推车", "手提秤", "手术刀", "手机卡", "手机壳", "手机维修", "手电筒", "打包绳", "打印机碳带", "打底", "打草绳", "打虫糖", "打钉枪", "打飞机", "托盘", "扩音器", "扭扭车", "把手", "抑菌膏", "抓周", "抓痒器", "投屏器", "投影仪包", "折叠锯子", "抚奶嘴", "抛光机", "护具", "护手霜", "护栏", "护理", "护眼贴", "护肤", "护腕", "护腿套", "护膝", "护踝", "报警器", "抬头纹", "抵用券", "抽屉轨道", "抽水器", "拉力器", "拉力绳", "拉柳枪", "拐杖", "拔毒膏", "拾音器", "挂篓", "挂绳", "挂钟", "挂钩", "指套", "挑逗", "挡风板", "挡风玻璃", "挤奶器", "捆扎绳", "捆绑绳", "损伤膏贴", "掏耳", "掏耳朵", "排气扇", "接线式直管", "提示牌", "提词器", "插座", "插销", "握力器", "摄像头", "摄像头膜", "摄像头镜片", "摄影灯", "摆件车模", "摇步器", "撑衣杆", "擦玻璃", "擦窗", "擦银布", "收敛水", "收藏册", "收钱码", "收银机", "改光膜", "效果图", "敏感", "敏肌", "救生衣", "教具", "教学", "教学视频", "教材", "教育", "数据线", "整理棒", "文胸", "斗笔", "断奶", "方向盘", "方向盘套", "日历", "早教", "替换头", "月子", "有机肥", "木糖醇", "机油", "机顶盒", "材料包", "条码", "枇杷秋梨膏", "枇杷膏", "枇杷雪梨膏", "枕头套", "架", "染发", "染发剂", "柔肤水", "柜吸", "栅网", "标志牌", "标签纸", "标识牌", "树苗", "样板盒", "格子长袖", "框", "桌垫", "梯", "梯子", "梳子", "棉袜", "棒棒糖", "棒球", "椅子套", "椅背置物袋", "模具", "止痒", "死皮", "母乳", "毛囊", "毛孔", "气压杆", "气垫霜", "气雾棒", "水乳", "水凝膜", "水勺", "水平仪", "水晶头", "水晶泥", "水枪", "水龙头", "汤勺", "汤盅", "汽油锯", "汽车头枕腰靠套装", "汽车尾部挂件", "汽车摆件", "汽车椅背", "汽车脚垫", "沉香", "沐浴包", "油壶", "油漆", "油罐", "泡沫", "泡沫胶", "泡泡纸", "泡澡球", "泥灸", "注射器", "注射针", "泳衣", "洁面", "洋娃娃", "洗地专用", "洗地液", "洗面", "洗鼻器", "流量卡", "测电笔", "测评", "测试", "浮标", "浮漂", "涂鸦贴纸", "消化不良", "消化道出血", "消毒", "消毒液", "消防水带", "润唇膏", "润滑", "润滑液", "润颜乳", "清水剂", "清洁刷", "清洁套装", "清洁液", "清洁球", "清洁软胶", "清洁配件", "渔具", "温度计", "湿手器", "湿粮", "滋养霜", "滑块袋", "滑板车", "滤杯", "滤网", "滤芯", "滤镜", "漆", "漱口水", "潜水服", "火花塞", "灭蝇", "灯泡", "灶台贴纸", "炎膏贴", "炖盅", "烧水棒", "热敷包", "热熔胶枪", "煤油", "燃气报警器", "爬爬垫", "爸爸装", "爸爸鞋", "爽肤水", "牙刷", "牙刷头", "牙刷收纳盒", "牙刷替换头", "牙套", "牙签", "牙签盒", "牙签防水", "牙线", "牙膏", "牛仔裤", "牛舌", "牵引器", "犬粮", "狗狗沐浴露", "狗皮膏", "狗粮", "狗链", "狗零食", "猪油", "猫咪", "猫咪玩具", "猫玩具", "猫砂", "猫粮", "玉米粉", "玛咖片", "玩具女孩", "玻尿酸", "玻珠", "玻珠幕", "玻璃", "玻璃吊", "玻璃胶", "玻璃镜片", "玻璃防雾剂", "球帽", "球拍", "理发器", "理发推", "理疗贴", "琴弦", "瑶浴粉", "瓜刨", "用友", "甲醛", "电子秤", "电容笔", "电池", "电源线", "电磨组套", "电缆剪", "电脑电源", "电视遥控器", "电话卡", "电话牌", "电钻", "电风扇罩", "男士用品", "男童", "番茄丁", "疣", "疮", "痉挛", "痔疮", "瘙痒", "白板笔", "白酒", "百日宴", "百褶", "皮套", "皮带", "皮筋枪", "益生菌", "监狱", "盘香", "眉笔", "真空袋", "眼影", "眼线笔", "眼罩", "眼药水", "眼袋", "眼镜", "眼霜", "睡眠片", "睡裤", "睫毛", "矫正", "矫正器", "矫正带", "短裙", "砂盆", "砂纸", "砂锅", "砍菜刀", "硅胶", "硬笔", "碎发", "碟子", "碳粉", "磨砂壳", "磨脚", "磨脚石", "示宽灯", "祛斑霜", "祛疤", "神经痛贴", "神露", "福来油", "私处", "秋梨膏", "移动wifi", "空气滤芯", "空调滤", "空调罩", "空调遥控器", "窗帘", "竖笛", "童装", "童装男女童", "笔槽", "笼子", "筋骨贴", "筒灯", "筷子", "签字笔", "米小芽", "类纸膜", "粉刺", "粉底", "粉扑", "粉扑盒子", "粉饼", "精华", "精华乳", "精华露", "精油", "糖糖粉", "素颜霜", "红包封", "红包袋", "红绳", "红花手套", "纱窗", "纱网", "纳米砖", "纸尿裤", "纹眉", "纹眉色料", "线上", "线上课程", "练字", "细纹霜", "绑带", "绘图板", "维修", "维生素", "绷带", "绿幕", "绿草皮", "网卡", "网线", "美容棒", "美容院", "美工刀", "美工笔", "美甲", "美缝", "美肌霜", "美胸", "羽毛球", "翻分器", "翻板钩", "翻身", "老人用品", "老式鸣笛", "老爷车", "老花", "考", "耐火泥", "耳罩", "耳钉", "职业装", "肥佬", "肥料", "育苗盘", "背心马甲", "背膜", "胖子", "胶囊", "胶带", "胸包", "胸针", "脖套", "脚垫", "脱发", "脱毛", "腋毛", "腋毛神器", "腮红", "腰带", "腰椎突出", "腰肌劳损", "膝盖贴", "臂力器", "自弹器", "自慰", "自拍杆", "舒缓水", "色料", "艾叶", "艾条", "艾灸贴", "艾绒贴", "艾胜者", "艾脐贴", "艾草", "芦荟", "花洒", "花瓶", "花萃", "苍蝇拍", "苍蝇药", "茗杯", "茶具", "茶勺", "茶壶", "茶宠", "茶杯", "莆田官网", "菊粉", "菲妮小熊", "葛根", "虾青素", "蚊帐", "蚊香", "蚯蚓粪", "蟑螂药", "行车记录仪", "补光灯", "补发", "补墙", "补水", "表带", "衬衫", "袖套", "袜子", "裁纸刀", "装修", "裤", "裤头", "裸妆", "褪黑素", "西汀片", "覆盖膜", "视线盲区贴纸", "视频mv", "视频教程", "角磨机", "角阀", "解码线", "触控笔", "警示牌", "订书机", "训练器", "评估检测", "试听课", "试用装", "请勿下单", "课", "调音器", "购物券", "购物袋", "贴布", "贴纸", "贴膜", "赠品", "起雾棒", "足浴粉", "趴趴枕", "跳绳", "身体乳", "车内清洁", "车漆", "车篓子", "车轮", "车载u盘", "车锁", "轨道", "转换", "转换器", "转接", "轮胎", "轮胎专用胶水", "软糖", "软膏", "辅食", "输精管", "过家家", "过滤棉", "运势书", "运费专拍", "连衣裙", "适配", "适配器", "逍遥马", "透气贴", "通体砖", "遮挡布", "遮瑕", "遮瑕膏", "避光垫", "避孕套", "酒", "酵素", "金刚胶", "金属探测", "金属探测器", "针头", "钉子", "钓鱼手竿", "钙咀嚼片", "钙片", "钢丝", "钢丝球", "钢化膜", "钢化蛋", "钢笔", "钥匙扣", "钳", "铁丝", "铅笔", "铆管", "锁头", "锁精环", "锅铲", "键盘垫", "锯条", "锯片", "镜头膜", "镜头贴", "镜片", "镰刀", "长筒", "长筒袜", "门吸", "门帘", "门把手", "门档", "门槛条", "门锁", "闹钟", "防卫尖刺", "防撞条", "防晒乳", "防晒霜", "防水敷贴", "防水涂料", "防滑垫", "防疫", "防疫包", "防疫香包", "防蚊裤", "防裂膏", "防静电", "阴囊", "阴部", "陀螺", "陈皮鸡", "降葵花盘", "除菌洗地液", "陶瓷瓶", "隔热板", "隔热棉", "隔离网", "隔音耳塞", "雕刻工具", "雨刮", "雨披", "雨衣", "露指", "青春痘", "静电", "静脉曲张", "静音阻尼", "非卖品", "靠背收纳袋", "面碗", "面罩", "面膜", "面酱", "面霜", "鞋", "鞋垫", "鞋带", "音频线", "领带", "领结", "额头贴", "风水鱼", "风湿贴", "飞机杯", "食盐", "饭盒", "饲料", "香囊袋", "香薰", "香薰精油", "马丁靴", "马桶刷", "马桶垫", "驱虫", "高升专", "高清配件", "魔法棒", "鱼竿", "鱼线", "鱼缸", "鱼钩", "鱼饵", "鸡毛掸子", "鸭肠", "鸳鸯锅", "鹿鞭", "麦克风", "黄膏贴", "黄金卡", "黑头", "黑沙", "黑色水笔", "鼠标垫", "鼠标手", "鼻头", "鼻影", "鼻毛", "鼻毛器", "鼻炎", "龟头"],
+ titleFilters: ["鞋","钳","酒","课","裤","考","疮","疣","漆","梯","框","架","巾","尿","尺","妆","夹","哨","剪","剂","丸","sd","SD","龟头","鹿鞭","鼻炎","黄冈","黑头","鼻毛","黑沙","鼻头","鱼饵","鼻影","U盘","鸭肠","鱼钩","鱼缸","鱼线","鱼竿","驱虫","香薰","饲料","饭盒","食盐","领结","领带","鞋带","鞋垫","面霜","面酱","面膜","面罩","面碗","静电","青汁","露指","雨衣","雨披","雨刮","陀螺","阴部","阴囊","防疫","闹钟","门锁","门档","门帘","门吸","长筒","镰刀","镜片","锯片","锯条","锅铲","锁头","铆管","铅笔","铁丝","钢笔","钢丝","钙片","钉子","针头","酵素","遮瑕","适配","辅食","软膏","软糖","轮胎","转接","转换","轨道","车锁","车轮","车漆","跳绳","赠品","贺卡","贴膜","贴纸","贴布","角阀","裸妆","裤头","装修","袜子","袖套","衬衫","表带","补水","补墙","补发","蚊香","蚊帐","葛根","菜罩","菊粉","莘月","茶杯","茶宠","茶壶","茶勺","茶具","茗杯","花萃","花瓶","花洒","芦荟","艾草","艾条","艾叶","色料","自慰","腰带","腮红","腋毛","脱毛","脱发","脚垫","脖套","胸针","胸包","胶枪","胶带","胶囊","胖子","背膜","肥料","肥佬","耳钉","耳罩","老花","翻身","美胸","美缝","美甲","网线","网卡","绿幕","绷带","维修","绑带","练字","线上","纹眉","纱网","纱窗","红绳","精油","精华","粉饼","粉扑","粉底","粉刺","筷子","筒灯","笼子","笔槽","童装","竖笛","窗帘","私处","神露","祛疤","磨脚","碳粉","碟子","碎发","硬笔","硅胶","砂锅","砂纸","砂盆","短裙","矫正","睫毛","睡裤","眼霜","眼镜","眼贴","眼袋","眼罩","眼影","眉笔","盘香","监狱","皮带","皮套","百褶","白酒","瘙痒","痛风","痔疮","痉挛","男童","电钻","电瓶","电池","甲醛","用友","瓜刨","琴弦","球拍","球帽","玻璃","玻珠","猫粮","猫砂","猫用","猫咪","猪油","狗链","狗粮","犬粮","牛舌","牙膏","牙线","牙签","牙套","牙刷","燮乐","煤油","炖盅","灯膜","灯泡","灭鼠","灭蝇","滤镜","滤芯","滤网","滤杯","湿粮","渔具","润滑","消毒","浮漂","浮标","测试","测评","洗面","洁面","泳衣","泥灸","泡沫","油罐","油漆","油壶","沉香","汤盅","汤勺","水泥","水枪","水带","水勺","水乳","毛孔","毛囊","母乳","死皮","止痒","模具","棒球","棉袜","梳子","梯子","桌垫","树苗","栅网","柜吸","染发","条码","机油","月子","早教","日历","断奶","斗笔","文胸","教育","教材","教学","教具","敏肌","敏感","擦窗","插销","插座","掸子","掏耳","挑逗","指套","挂钩","挂钟","挂绳","挂篓","拐杖","护踝","护膝","护腕","护肤","护理","护栏","护具","抓周","把手","托盘","打底","手电","手套","手册","戒烟","情趣","徽墨","彩铅","彩带","弹簧","延迟","延时","康复","座套","座垫","底座","幼儿","干裂","幕布","帽子","帆睿","布袋","屏风","尿素","小学","射灯","导购","宿便","宣纸","宠物","定制","定做","学历","婴儿","妇女","奶粉","奶瓶","头皮","天线","外用","壁纸","墨镜","墨粉","墨盒","墨水","墨条","墨块","增高","墙纸","培训","垫片","坐垫","地漏","地桩","地吸","圣杯","图钉","围裙","围兜","嚼片","喷壶","啪啪","唇釉","哺乳","哑光","咽炎","咳嗽","咬钩","呼噜","周岁","后膜","台灯","口腔","口罩","口红","口琴","压片","卸妆","卡针","卡牌","卡托","卡尺","卡套","卡册","医生","匙扣","化妆","包皮","勿拍","剪钳","剥虾","刷子","刷头","刮痧","别针","刨木","分流","刀片","刀头","减肥","冰袋","内裤","内衣","光驱","假发","倒车","修眉","修护","信纸","信封","保健","便秘","作业","会员","优盘","伊威","交换","乳腺","乳液","书法","书包","丰胸","丝袜","一盒","uv镜","香囊袋","黄金卡","高升专","鼻毛器","魔法棒","马桶垫","黄膏贴","鸳鸯锅","马桶刷","鼠标手","鼠标垫","SD卡","马丁靴","飞机杯","风湿贴","风水鱼","额头贴","音频线","非卖品","青春痘","雅翔仕","隔离霜","隔离网","隔热棉","隔热板","陶瓷瓶","陈皮鸡","防静电","防裂膏","hpv","防蚊裤","防疫包","防滑垫","防晒霜","防晒乳","防撞条","门槛条","门把手","长筒袜","镜头贴","镜头膜","键盘垫","锁精环","钥匙扣","钥匙套","钢化蛋","钢化膜","钢丝球","金刚胶","避孕套","避光垫","遮瑕膏","VGA","麦克风","LED","HPV","FMJ","鸥曼GTL","遮挡布","遥控器","通体砖","透气贴","逍遥马","适配器","追踪器","连衣裙","运势书","过滤棉","过家家","输精管","软电线","转换器","车篓子","身体乳","趴趴枕","足浴粉","超比乐","起雾棒","购物袋","购物券","调音器","试用装","试听课","训练器","订账本","订书机","警示牌","触控笔","解码线","角磨机","覆盖膜","西汀片","褪黑素","裁纸刀","补光灯","蟑螂药","蛋白肽","蚯蚓粪","虾青素","萨瑞斯","菊花茶","荧光笔","苦荞茶","苍蝇药","苍蝇拍","艾脐贴","艾胜者","艾绒贴","艾灸贴","舒缓水","自拍杆","自弹器","臂力器","膝盖贴","胖大海","育苗盘","职业装","耐火泥","老爷车","翻页笔","翻板钩","翻分器","羽毛球","美肌霜","美工笔","美工刀","美容院","美容油","美容棒","绿草皮","维生素","绘图板","细纹霜","纸尿裤","纳米砖","纤维素","红包袋","红包封","素颜霜","糖糖粉","精华露","精华乳","类纸膜","米小芽","签字笔","筹划税","筋骨贴","空调罩","空调滤","秋梨膏","福来油","祛斑霜","示宽灯","磨脚石","磨砂壳","砍菜刀","砍柴刀","矫正带","矫正器","睡眠片","眼药水","眼线笔","真空袋","益生菌","皮筋枪","百日宴","白板笔","番茄丁","电话牌","电话卡","电脑包","电缆剪","电源线","电容笔","电子秤","瑶浴粉","理疗贴","理发推","理发器","玻璃胶","玻璃吊","玻珠幕","玻尿酸","玛咖茶","玛咖片","玉米须","玉米粉","猫罐头","猫玩具","狗零食","狗皮膏","牵引器","牛仔裤","牙签盒","牙刷头","爽肤水","爸爸鞋","爸爸装","爬爬垫","热敷包","烧水棒","炎膏贴","火花塞","激光剑","潜水服","漱口水","滑漂座","滑板车","滑块袋","滋养霜","湿手器","温度计","清洁球","清洁液","清洁刷","清水剂","润颜乳","润滑液","润唇膏","消毒液","测电笔","流量卡","洗鼻器","洗地液","洋娃娃","注射针","注射器","泡澡球","泡泡纸","泡沫胶","沐浴包","汽油锯","水龙头","水管道","水果泥","水晶泥","水晶头","水平仪","水凝膜","气雾棒","气垫霜","气压杆","椅子套","棒棒糖","样板盒","标识牌","标签纸","标志牌","栀子茶","柔肤水","染发剂","枕头套","枇杷膏","材料包","机顶盒","木糖醇","有机肥","替换头","晨铭轩","晚安茶","方向盘","整理棒","数据线","救生衣","效果图","改光膜","收银机","收钱码","收藏册","收敛水","擦银布","擦玻璃","撑衣杆","摇步器","摄影灯","摄像头","握力器","提词器","提示牌","排气扇","掏耳朵","捆绑绳","捆扎绳","挤奶器","挡风板","按摩球","拾音器","拨浪鼓","拔毒膏","拉柳枪","拉力绳","拉力器","抽水器","抵用券","抬头纹","报警器","护腿套","护眼贴","护手霜","抛光机","抚奶嘴","投屏器","抓痒器","抑菌膏","扭扭车","扩音器","打飞机","打钉枪","打虫糖","打草绳","打包绳","手电筒","手机线","手机壳","手机卡","手术刀","手提秤","手推车","手动幕","戒奶嘴","成长裤","成人票","悠悠球","总复习","思维棋","弹力绳","开果器","开关盒","延长器","床垫套","幼儿园","平衡线","平光镜","干眼症","干洗剂","工作服","川品社","屏蔽袋","屏幕膜","尿素霜","尾灯膜","尼龙网","尼龙管","小状元","小斗篷","小塔糖","小勺子","封口机","对接头","富贵包","密码锁","密封袋","密封条","宫颈炎","实验课","宝珠笔","宝宝霜","宝塔糖","定位器","安全锤","安全裤","安全帽","孩儿乐","学习卡","存储卡","孕妇装","孔明锁","婴幼儿","如意碗","大头围","多色笔","外包税","复合肥","增生贴","塔菲克","塑身裤","塑料杯","垃圾袋","坐骨膏","坐便椅","坐便器","土工布","圆珠笔","固定器","喷雾器","唑溶液","咖啡豆","告知牌","吸顶灯","吸油纸","吸奶器","同仁堂","吃饭衣","号码卡","台账本","口香糖","口罩盒","变身器","反弹器","反光镜","反光贴","反光板","双黄连","双面板","双层片","双导向","参肽片","去角质","去毛器","去枣核","去斑霜","压差表","卸妆水","卧铺垫","半身裙","包装膜","加温器","加密狗","办公杯","办公宝","割草机","前列腺","削皮刀","刺激贴","刺梨糕","刹车油","刷牙头","刮痧板","创可贴","切菜板","切割片","分线盒","分流器","凳子套","减关镜","净水剂","冻干粉","冷敷贴","冷凝胶","冷兵器","决明子","冰箱贴","内胆包","养芝堂","养生茶","公文包","八倍镜","充电桩","充电头","储奶袋","停车牌","假睫毛","倒车镜","修眉剪","修正带","修复乳","保鲜膜","保温棉","保暖裤","保护镜","保护膜","保护套","保护壳","侧挂式","体验装","体温计","传菜铃","会员卡","亿优信","享底价","交换机","乒乓球","中老年","中性笔","中国结","专用贴","专升本","三轮车","三角阀","万藓灵","万用表","丁香茶","一片装","一次性","鼻腔喷雾","黑芝麻丸","黑色水笔","鸡毛掸子","高清配件","G100","4/3膜","hdmi","T口弯头","PVC板","H10E","车载u盘","视频mv","香薰精油","食用色素","静音阻尼","静脉曲张","雷气日式","雕刻工具","隔音耳塞","降葵花盘","防疫香包","防水涂料","防水敷贴","防卫尖刺","钙咀嚼片","钓鱼插件","钓鱼手竿","金属探测","HDMI","金属合金","运费专拍","车内清洁","赛柏瑞斯","货车用品","请勿下单","评估检测","视频教程","蒲公英茶","落花啼春","菲妮小熊","莆田官网","芊乔珠宝","腰肌劳损","腰椎突出","腋毛神器","背心马甲","老式鸣笛","老人用品","线上课程","纹眉色料","红花手套","粉扑盒子","空气滤芯","称斤积木","神经痛贴","男士用品","电风扇罩","电脑电源","电磨组套","电焊护脚","玻璃镜片","玫瑰花茶","玩具女孩","猫咪玩具","牙签防水","热熔胶枪","烘焙纸杯","灶台贴纸","满分冲刺","滚梳直柄","清洁配件","清洁软胶","清洁套装","消防水带","消化不良","涂鸦贴纸","海狸先生","洗地专用","汽车车灯","汽车脚垫","汽车椅背","汽车摆件","欧布圣剑","格子长袖","方向盘套","教学视频","摘果神器","摆件车模","摄像头膜","损伤膏贴","挡风玻璃","拌饭海苔","抽屉轨道","折叠锯子","投影仪包","打包袋子","手机维修","手工黏土","快递纸箱","德尔地板","延迟喷雾","床头台灯","幼儿配方","工作手册","尤克里里","少儿读物","小兔女士","寒假作业","宝宝鞋子","宝宝牙刷","宝宝成长","宝宝奶粉","宝宝口罩","学生文具","女童靴子","女童裤子","女士内裤","声卡套装","在线直播","园艺工具","商务休闲","哺乳套装","启动电源","合成机油","口腔抑菌","反光条贴","卧铺毛毯","半身不遂","凝胶糖果","决明子茶","公主项链","免钉胶水","光和青春","先徽葱油","儿童雨伞","儿童随身","儿童背包","儿童牙膏","儿童椅子","儿童拌饭","儿童成长","儿童奶粉","儿童吸管","儿童口罩","儿童医生","儿童便捷","儿童乐园","健康检测","保暖背心","保暖女裤","保护贴膜","会议记录","会议杯子","代餐奶昔","仓鼠零食","亲子互动","产品体验","九九乘除","九九乘法","串珠玩具","中性水笔","中国电信","万向滑轮","0-12岁","win10","金属探测器","玻璃防雾剂","轻酸瓶3%","靠背收纳袋","手工DIY","除菌洗地液","电视遥控器","童装男女童","行车记录仪","儿童n95","空调遥控器","狗狗沐浴露","牙刷替换头","牙刷收纳盒","燃气报警器","消防应急灯","消化道出血","水管保温套","椅背置物袋","棉线结矶杆","枇杷雪梨膏","枇杷秋梨膏","摄像头镜片","接线式直管","打印机碳带","手机充电线","惯性小汽车","尤尖锐湿疣","小孩子演奏","宝宝玩具车","宝宝灯笼裤","定做榻榻米","多功能尺子","垃圾处理器","地面清洁液","品雅有机茶","单拍不发货","半圆滑漂挡","剃须刀配件","儿童磨牙饼","儿童益生菌","儿童沐浴露","儿童暖暖套","仿真小蛋糕","人参五宝茶","中央扶手箱","SUP掌机","儿童玩具枪","DHA藻油","KVM切换器","儿童电话手表","樱の色鱼子酱","远投路滑配件","视线盲区贴纸","轮胎专用胶水","HEISHA","宝宝儿童零食","擦车清洁工具","汽车尾部挂件","移动wifi","SMOVES","烘焙彩针糖果","矶钓钓鱼配件","办公会议茶杯","儿童电动牙刷","儿童保温水杯","儿童串珠玩具","不干胶标签带","led开关电源","windows","Ockered","汽车头枕腰靠套装","金龙鱼 面条挂面","N1162有线鼠标","德生源氨基酸洗发水","女士内裤,少女内裤","KB216有线键盘","塑料士兵小军人玩具","MS116 有线鼠标","野铺子雪媚娘蛋黄酥6枚装 野铺子蛋黄酥【6枚装】","奥咖云南特产贡菊茶40g/罐无硫天然生态贡菊茶罐装","破壳茶叶poke福建安溪铁观音浓香型圆罐装散茶100g","羊蝎子批发现杀羊脊骨内蒙古新鲜火锅食材 羊蝎子1000g","落花啼春 吊坠女佛公弥勒笑佛玉坠玉石阿富汗项链挂坠玉佩玉器","正宗内蒙古羊肉卷 羔羊卷 涮火锅食材火锅料 1000g羊肉卷","a1雪绒蛋糕550g早餐食品小面包蒸蛋糕 a1雪绒蛋糕550g","THISE利斯欧洲原装进口全脂纯牛奶500ml高钙有机健康高端奶","盖世 美人唇杏鲍菇木耳海茸/裙带菜150g*4袋 解冻即食 海鲜水产","牛杂牛肚牛百叶白千层毛肚丝黑毛肚配菜批发新鲜火锅食材 1000g白千层","牛杂牛肚牛百叶白千层毛肚丝黑毛肚配菜批发新鲜火锅食材 1000g黑毛肚丝","宝佩 印尼五瓣小金刚菩提子双龙肉纹国潮复古单圈手链文玩佛珠手串男女 松石款","宝藏驼 猴头菇驼奶饼干代餐膳食纤维休闲零食小吃独立包装开袋即食饼干400g*1盒","舟山 黄花鱼新鲜冷冻 小黄鱼海鲜水产 清蒸红烧烧烤油炸皆可 整箱六斤装中号黄花鱼","啡趣精品挂耳咖啡现磨美式黑咖啡无糖滤挂式手冲咖啡粉新鲜烘焙风味原产地新朋友入会礼盒装","野生金鲳鱼大号新鲜冷冻鲜活白鲳鱼海昌鱼平鱼海鲜水产 大号金鲳鱼*1条(约8两-1斤)","SeeHe喜氢485ml瓶装 含氢饮用水 富氢水 水素水 弱碱性 办公室用水 12瓶装","MASIL 玛丝兰韩国三次方氨基酸洗发水便携旅行装8ml去屑控油(8ml*20条/盒)","黄海大鲅鱼新鲜鲅鱼鲅鱼整条鲅鱼马鲛鱼批发野生海捕鲅鱼 小号鲅鱼2500g(6两-8两/条)","TIMESWIND天然新疆玉多彩葫芦莲花手串戈壁玉黄玉古风个性女款玉石手链 玉莲花珠葫芦手链","女士香水三件套装淡香清新自由之水反转巴黎香水礼盒套装情人节生日礼物节日送礼 【黑鸦片香水三件套/每瓶30ml】","康佳(KONKA)燃气灶单眼灶具 5.0KW猛火台式单灶液化气灶 家用不锈钢大火力灶台 JZY-D502Y(液化气)","柯梦迪( Chredina)国潮无线充电器华为苹果通用桌面卡通图案迷你便携式 玲珑CR-W09 Type-C输入(安卓10W/苹果7.5W)"],
// 试用价格(中了要花多少钱),高于这个价格都不会试用,小于等于才会试用
trialPrice: 0,
/*
diff --git a/src/main/resources/test_world.js b/src/main/resources/test_world.js
index ec7993c..aced7b4 100644
--- a/src/main/resources/test_world.js
+++ b/src/main/resources/test_world.js
@@ -15,7 +15,7 @@ let roleMap = {
"jd_66ea783827d30": "军子",
"jd_4311ac0ff4456": "居子"
}
-let message = ""
+let message = ""
const $ = new Env('东东世界');
const notify = $.isNode() ? require('./sendNotify') : '';
const jdCookieNode = $.isNode() ? require('./jdCookie.js') : '';
@@ -24,7 +24,7 @@ if ($.isNode()) {
Object.keys(jdCookieNode).forEach((item) => {
cookiesArr.push(jdCookieNode[item])
});
- if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => {};
+ if (process.env.JD_DEBUG && process.env.JD_DEBUG === 'false') console.log = () => { };
} else {
cookiesArr = [
$.getdata("CookieJD"),
@@ -35,7 +35,7 @@ let authorization = {};
let invitelist = [];
!(async () => {
if (!cookiesArr[0]) {
- $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', {"open-url": "https://bean.m.jd.com/bean/signIndex.action"});
+ $.msg($.name, '【提示】请先获取京东账号一cookie\n直接使用NobyDa的京东签到获取', 'https://bean.m.jd.com/bean/signIndex.action', { "open-url": "https://bean.m.jd.com/bean/signIndex.action" });
return;
}
message += "[通知] 东子的世界 \n\n"
@@ -60,22 +60,22 @@ let invitelist = [];
console.log(JSON.stringify(invitelist));
- invitelist = [...invitelist,...($.shareCode || [])]
- cookiesArr = getRandomArrayElements(cookiesArr,cookiesArr.length);
+ invitelist = [...invitelist, ...($.shareCode || [])]
+ cookiesArr = getRandomArrayElements(cookiesArr, cookiesArr.length);
console.log(`\n\n====================开始脚本内互助===============================`);
for (let i = 0; i < cookiesArr.length; i++) {
$.index = i + 1;
$.cookie = cookiesArr[i];
$.UserName = decodeURIComponent($.cookie.match(/pt_pin=([^; ]+)(?=;?)/) && $.cookie.match(/pt_pin=([^; ]+)(?=;?)/)[1]);
- if(!authorization[$.UserName]){
+ if (!authorization[$.UserName]) {
continue;
}
$.canHelp = true;
$.accessToken = authorization[$.UserName];
for (let j = 0; j < invitelist.length && $.canHelp; j++) {
$.oneInvite = invitelist[j];
- if( $.oneInvite.user === $.UserName || $.oneInvite.needTime === 0){
+ if ($.oneInvite.user === $.UserName || $.oneInvite.needTime === 0) {
continue;
}
message += "" + `${$.UserName}去助力${roleMap[$.oneInvite.user]}` + " \n\n"
@@ -96,10 +96,10 @@ let invitelist = [];
async function main() {
$.token = ``;
await getToken();
- if ($.token === ``) {console.log(`获取token失败`);return;}
+ if ($.token === ``) { console.log(`获取token失败`); return; }
$.accessToken = '';
await takePostRequest('jd-user-info');
- if (!$.accessToken) {console.log(`获取accessToken失败`);return;}
+ if (!$.accessToken) { console.log(`获取accessToken失败`); return; }
authorization[$.UserName] = $.accessToken;
$.userInfo = {};
await takeGetRequest('get_user_info');
@@ -123,24 +123,24 @@ function getRandomArrayElements(arr, count) {
return shuffled.slice(min);
}
-async function doTask(){
+async function doTask() {
for (let i = 0; i < $.taskList.length; i++) {
$.oneTask = $.taskList[i];
- $.taskDetailList = $.oneTask.simpleRecordInfoVo || $.oneTask.browseShopVo || $.oneTask.shoppingActivityVos || $.oneTask.productInfoVos ||$.oneTask.assistTaskDetailVo;
+ $.taskDetailList = $.oneTask.simpleRecordInfoVo || $.oneTask.browseShopVo || $.oneTask.shoppingActivityVos || $.oneTask.productInfoVos || $.oneTask.assistTaskDetailVo;
console.log(`任务:${$.oneTask.taskName},需要完成${$.oneTask.maxTimes}次,已完成${$.oneTask.times}次`);
- if($.oneTask.status === 2){
+ if ($.oneTask.status === 2) {
continue;
}
- if($.oneTask.taskType === 6){
+ if ($.oneTask.taskType === 6) {
invitelist.push({
- 'user':$.UserName,
- 'inviter_id':$.userInfo.openid,
- 'taskToken':$.taskDetailList.taskToken,
- 'needTime':Number($.oneTask.maxTimes) - Number($.oneTask.times)
+ 'user': $.UserName,
+ 'inviter_id': $.userInfo.openid,
+ 'taskToken': $.taskDetailList.taskToken,
+ 'needTime': Number($.oneTask.maxTimes) - Number($.oneTask.times)
})
continue;
}
- if($.oneTask.taskType === 12){
+ if ($.oneTask.taskType === 12) {
$.info = $.taskDetailList;
console.log(`任务:${$.oneTask.taskName} 去执行`);
await takePostRequest('do_task');
@@ -149,16 +149,16 @@ async function doTask(){
}
for (let j = 0; j < $.taskDetailList.length; j++) {
$.info = $.taskDetailList[j];
- if($.info.status !== 1){
+ if ($.info.status !== 1) {
continue;
}
let waitDuration = 2;
- if(Number($.oneTask.waitDuration) > 0){
+ if (Number($.oneTask.waitDuration) > 0) {
waitDuration = $.oneTask.waitDuration;
}
console.log(`任务:${$.oneTask.taskName} 去执行,等待${waitDuration}秒`);
await takePostRequest('do_task');
- await $.wait(waitDuration*1000);
+ await $.wait(waitDuration * 1000);
}
}
}
@@ -180,22 +180,22 @@ async function takePostRequest(type) {
console.log(`错误${type}`);
}
let myRequest = {
- 'url':`https://ddsj-dz.isvjcloud.com/dd-api/${type}`,
- 'headers':{
- 'Origin' : `ddsj-dz.isvjcloud.com`,
- 'Connection' : `keep-alive`,
- 'Accept' : `application/json, text/plain, */*`,
- 'Authorization':`Bearer ${$.accessToken ?? 'undefined'}`,
+ 'url': `https://ddsj-dz.isvjcloud.com/dd-api/${type}`,
+ 'headers': {
+ 'Origin': `ddsj-dz.isvjcloud.com`,
+ 'Connection': `keep-alive`,
+ 'Accept': `application/json, text/plain, */*`,
+ 'Authorization': `Bearer ${$.accessToken ?? 'undefined'}`,
'User-Agent': $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"),
- 'Content-Type':'application/x-www-form-urlencoded',
- 'Referer' : `https://ddsj-dz.isvjcloud.com/dd-world/logined_jd/`,
- 'Accept-Encoding' : `gzip, deflate`,
- 'Accept-Language' : `zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7`,
- 'Cookie': 'dd-world=${$.accessToken};'+$.cookie,
- 'Host' : `ddsj-dz.isvjcloud.com`,
- 'X-Requested-With':'com.jingdong.app.mall'
+ 'Content-Type': 'application/x-www-form-urlencoded',
+ 'Referer': `https://ddsj-dz.isvjcloud.com/dd-world/logined_jd/`,
+ 'Accept-Encoding': `gzip, deflate`,
+ 'Accept-Language': `zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7`,
+ 'Cookie': 'dd-world=${$.accessToken};' + $.cookie,
+ 'Host': `ddsj-dz.isvjcloud.com`,
+ 'X-Requested-With': 'com.jingdong.app.mall'
},
- body:body
+ body: body
}
return new Promise(async resolve => {
$.post(myRequest, (err, resp, data) => {
@@ -211,20 +211,20 @@ async function takePostRequest(type) {
}
async function takeGetRequest(type) {
let myRequest = {
- 'url':`https://ddsj-dz.isvjcloud.com/dd-api/${type}`,
- 'headers':{
- 'Origin' : `ddsj-dz.isvjcloud.com`,
- 'Connection' : `keep-alive`,
- 'Accept' : `application/json, text/plain, */*`,
- 'Authorization':`Bearer ${$.accessToken ?? 'undefined'}`,
+ 'url': `https://ddsj-dz.isvjcloud.com/dd-api/${type}`,
+ 'headers': {
+ 'Origin': `ddsj-dz.isvjcloud.com`,
+ 'Connection': `keep-alive`,
+ 'Accept': `application/json, text/plain, */*`,
+ 'Authorization': `Bearer ${$.accessToken ?? 'undefined'}`,
'User-Agent': $.isNode() ? (process.env.JD_USER_AGENT ? process.env.JD_USER_AGENT : (require('./USER_AGENTS').USER_AGENT)) : ($.getdata('JDUA') ? $.getdata('JDUA') : "jdapp;iPhone;9.4.4;14.3;network/4g;Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;supportJDSHWK/1"),
- 'Content-Type':'application/x-www-form-urlencoded',
- 'Referer' : `https://ddsj-dz.isvjcloud.com/dd-world/logined_jd/`,
- 'Accept-Encoding' : `gzip, deflate`,
- 'Accept-Language' : `zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7`,
- 'Cookie': 'dd-world=${$.accessToken};'+$.cookie,
- 'Host' : `ddsj-dz.isvjcloud.com`,
- 'X-Requested-With':'com.jingdong.app.mall'
+ 'Content-Type': 'application/x-www-form-urlencoded',
+ 'Referer': `https://ddsj-dz.isvjcloud.com/dd-world/logined_jd/`,
+ 'Accept-Encoding': `gzip, deflate`,
+ 'Accept-Language': `zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7`,
+ 'Cookie': 'dd-world=${$.accessToken};' + $.cookie,
+ 'Host': `ddsj-dz.isvjcloud.com`,
+ 'X-Requested-With': 'com.jingdong.app.mall'
},
}
return new Promise(async resolve => {
@@ -262,20 +262,20 @@ function dealReturn(type, data) {
}
break;
case 'do_task':
- if(data.score){
+ if (data.score) {
console.log(`执行成功,获得积分:${data.score}`)
message += "" + `执行成功,获得积分:${data.score}` + " \n\n"
- }else{
+ } else {
console.log(`执行成功`);
}
break;
case 'do_assist_task':
$.canHelp = false;
- if(data.score){
+ if (data.score) {
console.log(`助力成功`);
message += "" + `助力成功` + " \n\n"
- $.oneInvite.needTime --;
- }else if(data.status_code === 422){
+ $.oneInvite.needTime--;
+ } else if (data.status_code === 422) {
message += "" + `助力次数已用完` + " \n\n"
console.log(`助力次数已用完`);
}
@@ -364,7 +364,7 @@ function TotalBean() {
})
}
// prettier-ignore
-function Env(t,e){"undefined"!=typeof process&&JSON.stringify(process.env).indexOf("GITHUB")>-1&&process.exit(0);class s{constructor(t){this.env=t}send(t,e="GET"){t="string"==typeof t?{url:t}:t;let s=this.get;return"POST"===e&&(s=this.post),new Promise((e,i)=>{s.call(this,t,(t,s,r)=>{t?i(t):e(s)})})}get(t){return this.send.call(this.env,t)}post(t){return this.send.call(this.env,t,"POST")}}return new class{constructor(t,e){this.name=t,this.http=new s(this),this.data=null,this.dataFile="box.dat",this.logs=[],this.isMute=!1,this.isNeedRewrite=!1,this.logSeparator="\n",this.startTime=(new Date).getTime(),Object.assign(this,e),this.log("",`🔔${this.name}, 开始!`)}isNode(){return"undefined"!=typeof module&&!!module.exports}isQuanX(){return"undefined"!=typeof $task}isSurge(){return"undefined"!=typeof $httpClient&&"undefined"==typeof $loon}isLoon(){return"undefined"!=typeof $loon}toObj(t,e=null){try{return JSON.parse(t)}catch{return e}}toStr(t,e=null){try{return JSON.stringify(t)}catch{return e}}getjson(t,e){let s=e;const i=this.getdata(t);if(i)try{s=JSON.parse(this.getdata(t))}catch{}return s}setjson(t,e){try{return this.setdata(JSON.stringify(t),e)}catch{return!1}}getScript(t){return new Promise(e=>{this.get({url:t},(t,s,i)=>e(i))})}runScript(t,e){return new Promise(s=>{let i=this.getdata("@chavy_boxjs_userCfgs.httpapi");i=i?i.replace(/\n/g,"").trim():i;let r=this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout");r=r?1*r:20,r=e&&e.timeout?e.timeout:r;const[o,h]=i.split("@"),n={url:`http://${h}/v1/scripting/evaluate`,body:{script_text:t,mock_type:"cron",timeout:r},headers:{"X-Key":o,Accept:"*/*"}};this.post(n,(t,e,i)=>s(i))}).catch(t=>this.logErr(t))}loaddata(){if(!this.isNode())return{};{this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e);if(!s&&!i)return{};{const i=s?t:e;try{return JSON.parse(this.fs.readFileSync(i))}catch(t){return{}}}}}writedata(){if(this.isNode()){this.fs=this.fs?this.fs:require("fs"),this.path=this.path?this.path:require("path");const t=this.path.resolve(this.dataFile),e=this.path.resolve(process.cwd(),this.dataFile),s=this.fs.existsSync(t),i=!s&&this.fs.existsSync(e),r=JSON.stringify(this.data);s?this.fs.writeFileSync(t,r):i?this.fs.writeFileSync(e,r):this.fs.writeFileSync(t,r)}}lodash_get(t,e,s){const i=e.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(const t of i)if(r=Object(r)[t],void 0===r)return s;return r}lodash_set(t,e,s){return Object(t)!==t?t:(Array.isArray(e)||(e=e.toString().match(/[^.[\]]+/g)||[]),e.slice(0,-1).reduce((t,s,i)=>Object(t[s])===t[s]?t[s]:t[s]=Math.abs(e[i+1])>>0==+e[i+1]?[]:{},t)[e[e.length-1]]=s,t)}getdata(t){let e=this.getval(t);if(/^@/.test(t)){const[,s,i]=/^@(.*?)\.(.*?)$/.exec(t),r=s?this.getval(s):"";if(r)try{const t=JSON.parse(r);e=t?this.lodash_get(t,i,""):e}catch(t){e=""}}return e}setdata(t,e){let s=!1;if(/^@/.test(e)){const[,i,r]=/^@(.*?)\.(.*?)$/.exec(e),o=this.getval(i),h=i?"null"===o?null:o||"{}":"{}";try{const e=JSON.parse(h);this.lodash_set(e,r,t),s=this.setval(JSON.stringify(e),i)}catch(e){const o={};this.lodash_set(o,r,t),s=this.setval(JSON.stringify(o),i)}}else s=this.setval(t,e);return s}getval(t){return this.isSurge()||this.isLoon()?$persistentStore.read(t):this.isQuanX()?$prefs.valueForKey(t):this.isNode()?(this.data=this.loaddata(),this.data[t]):this.data&&this.data[t]||null}setval(t,e){return this.isSurge()||this.isLoon()?$persistentStore.write(t,e):this.isQuanX()?$prefs.setValueForKey(t,e):this.isNode()?(this.data=this.loaddata(),this.data[e]=t,this.writedata(),!0):this.data&&this.data[e]||null}initGotEnv(t){this.got=this.got?this.got:require("got"),this.cktough=this.cktough?this.cktough:require("tough-cookie"),this.ckjar=this.ckjar?this.ckjar:new this.cktough.CookieJar,t&&(t.headers=t.headers?t.headers:{},void 0===t.headers.Cookie&&void 0===t.cookieJar&&(t.cookieJar=this.ckjar))}get(t,e=(()=>{})){t.headers&&(delete t.headers["Content-Type"],delete t.headers["Content-Length"]),this.isSurge()||this.isLoon()?(this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.get(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)})):this.isQuanX()?(this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t))):this.isNode()&&(this.initGotEnv(t),this.got(t).on("redirect",(t,e)=>{try{if(t.headers["set-cookie"]){const s=t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString();s&&this.ckjar.setCookieSync(s,null),e.cookieJar=this.ckjar}}catch(t){this.logErr(t)}}).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)}))}post(t,e=(()=>{})){if(t.body&&t.headers&&!t.headers["Content-Type"]&&(t.headers["Content-Type"]="application/x-www-form-urlencoded"),t.headers&&delete t.headers["Content-Length"],this.isSurge()||this.isLoon())this.isSurge()&&this.isNeedRewrite&&(t.headers=t.headers||{},Object.assign(t.headers,{"X-Surge-Skip-Scripting":!1})),$httpClient.post(t,(t,s,i)=>{!t&&s&&(s.body=i,s.statusCode=s.status),e(t,s,i)});else if(this.isQuanX())t.method="POST",this.isNeedRewrite&&(t.opts=t.opts||{},Object.assign(t.opts,{hints:!1})),$task.fetch(t).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>e(t));else if(this.isNode()){this.initGotEnv(t);const{url:s,...i}=t;this.got.post(s,i).then(t=>{const{statusCode:s,statusCode:i,headers:r,body:o}=t;e(null,{status:s,statusCode:i,headers:r,body:o},o)},t=>{const{message:s,response:i}=t;e(s,i,i&&i.body)})}}time(t,e=null){const s=e?new Date(e):new Date;let i={"M+":s.getMonth()+1,"d+":s.getDate(),"H+":s.getHours(),"m+":s.getMinutes(),"s+":s.getSeconds(),"q+":Math.floor((s.getMonth()+3)/3),S:s.getMilliseconds()};/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(s.getFullYear()+"").substr(4-RegExp.$1.length)));for(let e in i)new RegExp("("+e+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?i[e]:("00"+i[e]).substr((""+i[e]).length)));return t}msg(e=t,s="",i="",r){const o=t=>{if(!t)return t;if("string"==typeof t)return this.isLoon()?t:this.isQuanX()?{"open-url":t}:this.isSurge()?{url:t}:void 0;if("object"==typeof t){if(this.isLoon()){let e=t.openUrl||t.url||t["open-url"],s=t.mediaUrl||t["media-url"];return{openUrl:e,mediaUrl:s}}if(this.isQuanX()){let e=t["open-url"]||t.url||t.openUrl,s=t["media-url"]||t.mediaUrl;return{"open-url":e,"media-url":s}}if(this.isSurge()){let e=t.url||t.openUrl||t["open-url"];return{url:e}}}};if(this.isMute||(this.isSurge()||this.isLoon()?$notification.post(e,s,i,o(r)):this.isQuanX()&&$notify(e,s,i,o(r))),!this.isMuteLog){let t=["","==============📣系统通知📣=============="];t.push(e),s&&t.push(s),i&&t.push(i),console.log(t.join("\n")),this.logs=this.logs.concat(t)}}log(...t){t.length>0&&(this.logs=[...this.logs,...t]),console.log(t.join(this.logSeparator))}logErr(t,e){const s=!this.isSurge()&&!this.isQuanX()&&!this.isLoon();s?this.log("",`❗️${this.name}, 错误!`,t.stack):this.log("",`❗️${this.name}, 错误!`,t)}wait(t){return new Promise(e=>setTimeout(e,t))}done(t={}){const e=(new Date).getTime(),s=(e-this.startTime)/1e3;this.log("",`🔔${this.name}, 结束! 🕛 ${s} 秒`),this.log(),(this.isSurge()||this.isQuanX()||this.isLoon())&&$done(t)}}(t,e)}
+function Env(t, e) { "undefined" != typeof process && JSON.stringify(process.env).indexOf("GITHUB") > -1 && process.exit(0); class s { constructor(t) { this.env = t } send(t, e = "GET") { t = "string" == typeof t ? { url: t } : t; let s = this.get; return "POST" === e && (s = this.post), new Promise((e, i) => { s.call(this, t, (t, s, r) => { t ? i(t) : e(s) }) }) } get(t) { return this.send.call(this.env, t) } post(t) { return this.send.call(this.env, t, "POST") } } return new class { constructor(t, e) { this.name = t, this.http = new s(this), this.data = null, this.dataFile = "box.dat", this.logs = [], this.isMute = !1, this.isNeedRewrite = !1, this.logSeparator = "\n", this.startTime = (new Date).getTime(), Object.assign(this, e), this.log("", `🔔${this.name}, 开始!`) } isNode() { return "undefined" != typeof module && !!module.exports } isQuanX() { return "undefined" != typeof $task } isSurge() { return "undefined" != typeof $httpClient && "undefined" == typeof $loon } isLoon() { return "undefined" != typeof $loon } toObj(t, e = null) { try { return JSON.parse(t) } catch { return e } } toStr(t, e = null) { try { return JSON.stringify(t) } catch { return e } } getjson(t, e) { let s = e; const i = this.getdata(t); if (i) try { s = JSON.parse(this.getdata(t)) } catch { } return s } setjson(t, e) { try { return this.setdata(JSON.stringify(t), e) } catch { return !1 } } getScript(t) { return new Promise(e => { this.get({ url: t }, (t, s, i) => e(i)) }) } runScript(t, e) { return new Promise(s => { let i = this.getdata("@chavy_boxjs_userCfgs.httpapi"); i = i ? i.replace(/\n/g, "").trim() : i; let r = this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout"); r = r ? 1 * r : 20, r = e && e.timeout ? e.timeout : r; const [o, h] = i.split("@"), n = { url: `http://${h}/v1/scripting/evaluate`, body: { script_text: t, mock_type: "cron", timeout: r }, headers: { "X-Key": o, Accept: "*/*" } }; this.post(n, (t, e, i) => s(i)) }).catch(t => this.logErr(t)) } loaddata() { if (!this.isNode()) return {}; { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e); if (!s && !i) return {}; { const i = s ? t : e; try { return JSON.parse(this.fs.readFileSync(i)) } catch (t) { return {} } } } } writedata() { if (this.isNode()) { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e), r = JSON.stringify(this.data); s ? this.fs.writeFileSync(t, r) : i ? this.fs.writeFileSync(e, r) : this.fs.writeFileSync(t, r) } } lodash_get(t, e, s) { const i = e.replace(/\[(\d+)\]/g, ".$1").split("."); let r = t; for (const t of i) if (r = Object(r)[t], void 0 === r) return s; return r } lodash_set(t, e, s) { return Object(t) !== t ? t : (Array.isArray(e) || (e = e.toString().match(/[^.[\]]+/g) || []), e.slice(0, -1).reduce((t, s, i) => Object(t[s]) === t[s] ? t[s] : t[s] = Math.abs(e[i + 1]) >> 0 == +e[i + 1] ? [] : {}, t)[e[e.length - 1]] = s, t) } getdata(t) { let e = this.getval(t); if (/^@/.test(t)) { const [, s, i] = /^@(.*?)\.(.*?)$/.exec(t), r = s ? this.getval(s) : ""; if (r) try { const t = JSON.parse(r); e = t ? this.lodash_get(t, i, "") : e } catch (t) { e = "" } } return e } setdata(t, e) { let s = !1; if (/^@/.test(e)) { const [, i, r] = /^@(.*?)\.(.*?)$/.exec(e), o = this.getval(i), h = i ? "null" === o ? null : o || "{}" : "{}"; try { const e = JSON.parse(h); this.lodash_set(e, r, t), s = this.setval(JSON.stringify(e), i) } catch (e) { const o = {}; this.lodash_set(o, r, t), s = this.setval(JSON.stringify(o), i) } } else s = this.setval(t, e); return s } getval(t) { return this.isSurge() || this.isLoon() ? $persistentStore.read(t) : this.isQuanX() ? $prefs.valueForKey(t) : this.isNode() ? (this.data = this.loaddata(), this.data[t]) : this.data && this.data[t] || null } setval(t, e) { return this.isSurge() || this.isLoon() ? $persistentStore.write(t, e) : this.isQuanX() ? $prefs.setValueForKey(t, e) : this.isNode() ? (this.data = this.loaddata(), this.data[e] = t, this.writedata(), !0) : this.data && this.data[e] || null } initGotEnv(t) { this.got = this.got ? this.got : require("got"), this.cktough = this.cktough ? this.cktough : require("tough-cookie"), this.ckjar = this.ckjar ? this.ckjar : new this.cktough.CookieJar, t && (t.headers = t.headers ? t.headers : {}, void 0 === t.headers.Cookie && void 0 === t.cookieJar && (t.cookieJar = this.ckjar)) } get(t, e = (() => { })) { t.headers && (delete t.headers["Content-Type"], delete t.headers["Content-Length"]), this.isSurge() || this.isLoon() ? (this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.get(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) })) : this.isQuanX() ? (this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t))) : this.isNode() && (this.initGotEnv(t), this.got(t).on("redirect", (t, e) => { try { if (t.headers["set-cookie"]) { const s = t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString(); s && this.ckjar.setCookieSync(s, null), e.cookieJar = this.ckjar } } catch (t) { this.logErr(t) } }).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) })) } post(t, e = (() => { })) { if (t.body && t.headers && !t.headers["Content-Type"] && (t.headers["Content-Type"] = "application/x-www-form-urlencoded"), t.headers && delete t.headers["Content-Length"], this.isSurge() || this.isLoon()) this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.post(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) }); else if (this.isQuanX()) t.method = "POST", this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t)); else if (this.isNode()) { this.initGotEnv(t); const { url: s, ...i } = t; this.got.post(s, i).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) }) } } time(t, e = null) { const s = e ? new Date(e) : new Date; let i = { "M+": s.getMonth() + 1, "d+": s.getDate(), "H+": s.getHours(), "m+": s.getMinutes(), "s+": s.getSeconds(), "q+": Math.floor((s.getMonth() + 3) / 3), S: s.getMilliseconds() }; /(y+)/.test(t) && (t = t.replace(RegExp.$1, (s.getFullYear() + "").substr(4 - RegExp.$1.length))); for (let e in i) new RegExp("(" + e + ")").test(t) && (t = t.replace(RegExp.$1, 1 == RegExp.$1.length ? i[e] : ("00" + i[e]).substr(("" + i[e]).length))); return t } msg(e = t, s = "", i = "", r) { const o = t => { if (!t) return t; if ("string" == typeof t) return this.isLoon() ? t : this.isQuanX() ? { "open-url": t } : this.isSurge() ? { url: t } : void 0; if ("object" == typeof t) { if (this.isLoon()) { let e = t.openUrl || t.url || t["open-url"], s = t.mediaUrl || t["media-url"]; return { openUrl: e, mediaUrl: s } } if (this.isQuanX()) { let e = t["open-url"] || t.url || t.openUrl, s = t["media-url"] || t.mediaUrl; return { "open-url": e, "media-url": s } } if (this.isSurge()) { let e = t.url || t.openUrl || t["open-url"]; return { url: e } } } }; if (this.isMute || (this.isSurge() || this.isLoon() ? $notification.post(e, s, i, o(r)) : this.isQuanX() && $notify(e, s, i, o(r))), !this.isMuteLog) { let t = ["", "==============📣系统通知📣=============="]; t.push(e), s && t.push(s), i && t.push(i), console.log(t.join("\n")), this.logs = this.logs.concat(t) } } log(...t) { t.length > 0 && (this.logs = [...this.logs, ...t]), console.log(t.join(this.logSeparator)) } logErr(t, e) { const s = !this.isSurge() && !this.isQuanX() && !this.isLoon(); s ? this.log("", `❗️${this.name}, 错误!`, t.stack) : this.log("", `❗️${this.name}, 错误!`, t) } wait(t) { return new Promise(e => setTimeout(e, t)) } done(t = {}) { const e = (new Date).getTime(), s = (e - this.startTime) / 1e3; this.log("", `🔔${this.name}, 结束! 🕛 ${s} 秒`), this.log(), (this.isSurge() || this.isQuanX() || this.isLoon()) && $done(t) } }(t, e) }
@@ -377,7 +377,7 @@ function postToDingTalk(messgae) {
const body = {
"msgtype": "markdown",
"markdown": {
- "title": "签到领现金",
+ "title": "东子的世界",
"text": message1
},
"at": {