当前位置: 首页 > news >正文

抖音自动养号脚本+抖音直播控场脚本

功能描述

一.抖音功能

1.垂直浏览
2.直播暖场
3.精准引流
4.粉丝留言
5.同城引流
6.取消关注
7.万能引流
8.精准截流
9.访客引流
10.直播间引流
11.视频分享
12.榜单引流
13.搜索引流
14.点赞回访
15.智能引流
16.关注回访

介绍下小红书数据挖掘

搜索关键词,自动搜索相关用户信息,记录并保存,对于寻找博主种草推文的用户应该是个不错的小助手

发福利===放部分源码出来

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

301

302

303

304

305

306

307

308

309

310

311

312

313

314

315

316

317

318

319

320

321

322

323

324

325

326

327

328

329

330

331

332

333

334

335

336

337

338

339

340

341

342

343

344

345

346

347

348

349

350

351

352

353

354

355

356

357

358

359

360

361

362

363

364

365

366

367

368

369

370

371

372

373

374

375

376

377

378

379

380

381

382

383

384

385

386

387

388

389

390

391

392

393

394

395

396

397

398

399

400

401

402

403

404

405

406

407

408

409

410

411

412

413

414

415

416

417

418

419

420

421

422

423

424

425

426

427

428

429

430

431

432

433

434

435

436

437

438

439

440

441

442

443

444

445

446

447

448

449

450

451

452

453

454

455

456

457

458

459

460

461

462

463

464

465

466

467

468

469

470

471

472

473

474

475

476

477

478

479

480

481

482

483

484

485

486

487

488

489

490

491

492

493

494

495

496

497

498

auto.waitFor();

log("-启动-垂直浏览功能");

var startTime=new Date().getTime();

var plList;//评论内容列表

var gzzbNum=0;//记录关注主播数量

var dzslNum=0;//点赞主播数量

var llzpNum=0;//浏览作品数量

var zpgjcList;//关键词

var tlsjTime=5000;//停留观看时间 默认5s

beforRun();

doNext();

endRun();

storage.put("RUN_JS_RUNING",false);//运行结束

log("-停止-垂直浏览功能");

//继续下一步

function doNext(){

    var ifInLiveRoom=checkInLive();//是否在直播间

    if(ifInLiveRoom){

        //直播间里

        zbjRun();

    }else{

        //短视频

        dspRun();

    }

}

//短视频运行

function dspRun(){

    console.warn("浏览短视频");

    console.warn("自定义评论内容:"+DY_czll_plnr);

    while(true){

        llzpNum++;

        var ifContinue=checkGjz();//检测关键字

        if(ifContinue){

            //检测有关键字

            clickGuanzhu();//短视频点赞关注

            clickZan();//短视频点赞关注

            clickPinglun();//短视频评论

            sleep(tlsjTime);//停留浏览时间3s

        }

        //判断是否停止运行脚本

        var isRun=storage.get("RUN_JS_RUNING",false);

        if(!isRun){

            return;//结束

        }

        //检测运行时间

        var endTime=new Date().getTime();

        var runAllTime=(endTime-startTime)/1000;//已经运行秒

        if(runAllTime>DY_czll_lltjsc*60){

            //到达设置时间

            return;

        }

        console.warn("屏幕宽高:"+device.width+","+device.height);

//        swipe(device.width-200, device.height-400, device.width-200100500);//下一条视频

        swipe(device.width/2, device.height/5*4, device.width/2, device.height/5200);//下一条视频

        sleep(1000);

    }

}

//直播间运行

function zbjRun(){

    console.warn("观看直播");

    while(true){

        llzpNum++;

        clickHbFd();//点击领取红包福袋

        var ifContinue=checkZbjGjz();//检测关键字

        if(ifContinue){

            //检测有关键字

            clickZbjPinglun();//直播间评论

            sleep(tlsjTime);//停留浏览时间3s

        }

        //判断是否停止运行脚本

        var isRun=storage.get("RUN_JS_RUNING",false);

        if(!isRun){

            return;//结束

        }

        //检测运行时间

        var endTime=new Date().getTime();

        var runAllTime=(endTime-startTime)/1000;//已经运行秒

        if(runAllTime>DY_czll_lltjsc*60){

            //到达设置时间

            return;

        }

        swipe(device.width-200, device.height-400, device.width-200100500);//下一条视频

        sleep(1000);

    }

}

//运行开始

function beforRun(){

    log("系统提醒:浏览时长"+DY_czll_lltjsc+"分钟");

    if(DY_czll_gbgjcsb){

        log("关闭关键词识别");

    }else{

        if(DY_czll_zpgjc!=null&&DY_czll_zpgjc!=""){

            zpgjcList=DY_czll_zpgjc.split(",");

            log("关键词数量:"+zpgjcList.length);

            for(var i=0;i<zpgjcList.length;i++){

                var gjc=zpgjcList[i];

                log("关键词"+(i+1)+":"+gjc);

            }

        }

    }

}

//运行结束

function endRun(){

    var ifInLiveRoom=checkInLive();//是否在直播间

    var endTime=new Date().getTime();

    log("时间提示:运行"+(endTime-startTime)/1000+"秒");

    if(ifInLiveRoom){

        log("观看直播间:"+llzpNum);

    }else{

        log("浏览作品:"+llzpNum);

        log("点赞作品:"+dzslNum);

        log("关注作品:"+gzzbNum);

    }

}

//校验是否在直播间页面

function checkInLive(){

    var livecommentLab=text("说点什么...").findOne(1000);

    if(livecommentLab==null){

        return false;

    }else{

        return true;

    }

}

//直播间领取红包和福袋

function clickHbFd(){

    var hbmqdLable=text("知道了").findOne(100);

    if(hbmqdLable!=null){

        hbmqdLable.click();

    }

    if(!DY_czll_lqhbfd){

        return;

    }

    sleep(5000);

    var hbfdLayout=className("android.widget.HorizontalScrollView").findOne(2000);

    if(hbfdLayout==null){

        log("系统提示:没有红包或福袋,自动跳过");

        return;

    }

    if(hbfdLayout.childCount()==0){

        log("系统提示:没有红包或福袋,自动跳过");

        return;

    }

    var hbfdFrameLayout=hbfdLayout.child(0);

    if(hbfdFrameLayout.childCount()==0){

        log("系统提示:没有红包或福袋,自动跳过");

        return;

    }

    log("系统提示:检测到红包或福袋");

    for(var i=0;i<hbfdFrameLayout.childCount();i++){

        var hbfdFrameItem=hbfdFrameLayout.child(i);

        if(hbfdFrameItem==null){

            continue;

        }

        hbfdFrameItem.click();

        sleep(2000);

        var ifFd=clickFd(hbfdFrameItem);

        if(ifFd){

            //是福袋

            continue;

        }

        clickHb();

        sleep(2000);

    }

    suijiSleep();

}

//点击的是福袋

function clickFd(hbfdFrameItem){

    var fdView=text("福袋").findOne(1000);

    if(fdView==null){

        return false;

    }

    if("2"==DY_czll_fdhbsz){

        //只领取红包

        log("系统提示:只领取红包,自动关闭福袋");

        click(device.width/2+200, device.height/2-300);

        return false;

    }

    if("android.view.View"!=fdView.className()){

        click(device.width/2+200, device.height/2-300);

        return false;

    }

    var jrfstView=textContains("加入粉丝团").findOne(1000);

    if(jrfstView!=null){

        //需要加入粉丝团

        if("2"==DY_czll_fdlqtj){

            //免费领取的 跳过

            log("系统提示:领取福袋需要加入粉丝团,自动跳过");

            click(device.width/2+200, device.height/2-300);

            return true;

        }

        var jrfstydbLabel=text("加入粉丝团(1抖币)").findOne(1000);

        if(jrfstydbLabel==null){

            log("系统提示:加入粉丝团大于1抖币,自动跳过");

            click(device.width/2+200, device.height/2-300);

            return true;

        }

        jrfstydbLabel.click();

        sleep(2000);

        var czLabel=textContains("立即充值").findOne(1000);

        if(czLabel!=null){

            log("系统提示:抖币余额不足,自动跳过");

            click(device.width/2+200, device.height/2-300);

            sleep(1000);

            click(device.width/2+200, device.height/2-300);

            return true;

        }else{

            log("系统提示:支付1抖币加入粉丝团");

        }

    }

    var qfbplView=text("去发表评论").findOne(1000);

    if(qfbplView==null){

        log("系统提示:未找到参与福袋评论按钮,自动跳过");

        click(device.width/2+200, device.height/2-300);

        return true;

    }

    console.warn("时间限制:"+DY_czll_fdsjxz);

    if("3"!=DY_czll_fdsjxz){

        //少于1分钟或少于两分钟

        var ifLessTime=false;

        var djsTitleLabel=text("倒计时").findOne(1000);

        if(djsTitleLabel!=null){

            var djsParentLayout=djsTitleLabel.parent();

            var djsLabel=djsParentLayout.child(1);

            if(djsLabel!=null){

                var djsTimeStr=djsLabel.text();

                log("系统提示:福袋开奖时间"+djsTimeStr);

                if("1"==DY_czll_fdsjxz){

                    //少于1分钟

                    if(djsTimeStr.indexOf("00:")==0){

                        ifLessTime=false;

                    }else{

                        ifLessTime=true;

                    }

                }else if("2"==DY_czll_fdsjxz){

                    //少于2分钟

                    if(djsTimeStr.indexOf("00:")==0||djsTimeStr.indexOf("01:")==0){

                        ifLessTime=false;

                    }else{

                        ifLessTime=true;

                    }

                }

            }

        }

        if(ifLessTime){

            log("系统提示:开奖时间太长,自动跳过");

            click(device.width/2+200, device.height/2-300);

            return true;

        }

    }

    console.warn("福袋概率设置:"+DY_czll_fdzjgl);

    if("5"!=DY_czll_fdzjgl){

        //中奖概率设置

        var gfdNumLabel=textContains("个福袋").findOne(1000);

        var yzyNumLabel=textContains("人已参与").findOne(1000);

        if(gfdNumLabel!=null&&yzyNumLabel!=null){

            var gfdNumStr=gfdNumLabel.text();

            var yzyNumStr=yzyNumLabel.text();

            log("系统提示:"+gfdNumStr+","+yzyNumStr);

            gfdNumStr=gfdNumStr.slice(0,gfdNumStr.indexOf("个福袋"));

            yzyNumStr=yzyNumStr.slice(0,yzyNumStr.indexOf("人已参与"));

            var gailv=parseInt(parseInt(gfdNumStr)/(parseInt(yzyNumStr)*1.00)*100);

            log("系统提示:中奖概率"+gailv+"%");

            if("1"==DY_czll_fdzjgl){

                //中奖概率大于20

                if(gailv<20){

                    log("系统提示:中奖概率低于20%,自动跳过");

                    click(device.width/2+200, device.height/2-300);

                    return true;

                }

            }else if("2"==DY_czll_fdzjgl){

                //中奖概率大于50

                if(gailv<50){

                    log("系统提示:中奖概率低于50%,自动跳过");

                    click(device.width/2+200, device.height/2-300);

                    return true;

                }

            }else if("3"==DY_czll_fdzjgl){

                //中奖概率大于80

                if(gailv<80){

                    log("系统提示:中奖概率低于80%,自动跳过");

                    click(device.width/2+200, device.height/2-300);

                    return true;

                }

            }else if("4"==DY_czll_fdzjgl){

                //中奖概率大于100

                if(gailv<100){

                    log("系统提示:中奖概率低于100%,自动跳过");

                    click(device.width/2+200, device.height/2-300);

                    return true;

                }

            }

        }

    }

    qfbplView.click();

    var huifuEditView = className("android.widget.EditText").findOne(1000);//找到输入框

    if(huifuEditView!=null){

        var msgStr=huifuEditView.text();

        var sendBtn=desc("发送").findOne();

        sendBtn.click();

        log("评论内容:"+msgStr);

        log("系统提示:已参与福袋抽奖");

        sleep(2000);

        hbfdFrameItem.click();

        var hbmqdLable=text("知道了").findOne();

        if(hbmqdLable!=null){

            suijiSleep();

            hbmqdLable.click();

        }

    }

    return true;

}

//点击的是红包

function clickHb(){

    var closeBtnArr=desc("关闭").find();

    console.warn("关闭按钮的数量:"+closeBtnArr.length);

    var closeBtn=closeBtnArr[closeBtnArr.length-1];

    if(closeBtn==null){

        return;

    }

    var closeViewGroup=closeBtn.parent();

    if("android.view.ViewGroup"!=closeViewGroup.className()){

        console.warn("不是 android.view.ViewGroup");

        console.warn("关闭按钮的位置:"+closeBtn.bounds().centerY());

        if(closeBtn.bounds().centerY()<device.height/2-500){

            //不是弹框的关闭

            return;

        }

        closeBtn.click();

        return;

    }

    if("1"==DY_czll_fdhbsz){

        //只领取福袋

        log("系统提示:只领取福袋,不点击红包");

        closeBtn.click();

        return;

    }

    console.warn("时间限制:"+DY_czll_fdsjxz);

    if("3"!=DY_czll_fdsjxz){

        //少于1分钟或少于两分钟

        var ifLessTime=false;

        var djsLabel=textContains("可抢").findOne(1000);

        if(djsLabel!=null){

            var djsTimeStr=djsLabel.text();

            log("系统提示:福袋开奖时间"+djsTimeStr);

            if("1"==DY_czll_fdsjxz){

                ifLessTime=true;

            }else if("2"==DY_czll_fdsjxz){

                //少于2分钟

                if(djsTimeStr.indexOf("1分")==0){

                    ifLessTime=false;

                }else{

                    ifLessTime=true;

                }

            }

        }

        if(ifLessTime){

            log("系统提示:开奖时间太长,自动跳过");

            closeBtn.click();

            return;

        }

    }

    var hbyqwLabel=text("红包已抢完").findOne(50);

    var hbmqdLable=text("知道了").findOne(50);

    var smlLable=text("手慢了").findOne(50);

    var ckdjsqLabel=text("查看大家手气").findOne(50);

    var hbygqLabel=text("红包已过期").findOne(50);

    while(hbyqwLabel==null&&hbmqdLable==null&&smlLable==null&&ckdjsqLabel==null&&hbygqLabel==null){

        log("系统提示:点击抢红包");

        console.warn("点击位置:"+device.width/2+","+device.height/2);

        click(device.width/2,device.height/2);

        hbyqwLabel=text("红包已抢完").findOne(50);

        hbmqdLable=text("知道了").findOne(50);

        smlLable=text("手慢了").findOne(50);

        ckdjsqLabel=text("查看大家手气").findOne(50);

        hbygqLabel=text("红包已过期").findOne(50);

    }

    suijiSleep();

    closeBtn.click();

}

//短视频关键字校验

function checkGjz(){

    var startCheckTime=new Date().getTime();

    var headImgView=findBtnType(3);

    var textRootLayout=findBtnType(4);

    if(headImgView!=null){

        var nickNameStr=headImgView.desc();

        log("视频发布者:"+nickNameStr);

    }

    var ifCheckHave=checkGjzDetail(textRootLayout);

    var endCheckTime=new Date().getTime();

    var logStr="检测耗时"+(endCheckTime-startCheckTime)/1000+"秒";

    if(ifCheckHave){

        if(!DY_czll_gbgjcsb){

            //开启检测关键词

            logStr="检测到关键字,"+logStr;

            log(logStr);

        }

        //随机停留观看时间

        tlsjTime=parseInt(Math.random()*(DY_czll_llzpsj_big-DY_czll_llzpsj_small))+DY_czll_llzpsj_small;

        tlsjTime=tlsjTime*1000;

        log("停留观看"+tlsjTime/1000+"秒");

    }else{

        logStr="跳过该视频,未检测到关键字,"+logStr;

        log(logStr);

        sleep(2000);

    }

    return ifCheckHave;

}

//短视频点赞

function clickZan(){

    if(DY_czll_pldz){

        var checkItem=findBtnType(2);

        if(checkItem!=null){

            checkItem.click();

            dzslNum++;

            log("点赞数量:"+dzslNum);

            sleep(500);

        }else{

            console.warn("未找到点赞按钮");

        }

    }

}

//直播间关键字

function checkZbjGjz(){

    var startCheckTime=new Date().getTime();

    var nickNameView=findZbjBtnType(1);

    var textRootLayout=findZbjBtnType(2);

    if(nickNameView!=null){

        var nickNameStr=nickNameView.text();

        log("直播者:"+nickNameStr);

    }

    var ifCheckHave=checkGjzDetail(textRootLayout);

    var endCheckTime=new Date().getTime();

    var logStr="检测耗时"+(endCheckTime-startCheckTime)/1000+"秒";

    if(ifCheckHave){

        if(!DY_czll_gbgjcsb){

            //开启检测关键词

            logStr="检测到关键字,"+logStr;

            log(logStr);

        }

        //随机停留观看时间

        tlsjTime=parseInt(Math.random()*(DY_czll_llzpsj_big-DY_czll_llzpsj_small))+DY_czll_llzpsj_small;

        tlsjTime=tlsjTime*1000;

        log("停留观看"+tlsjTime/1000+"秒");

    }else{

        logStr="跳过该视频,未检测到关键字,"+logStr;

        log(logStr);

        sleep(2000);

    }

    return ifCheckHave;

}

//直播间评论

function clickZbjPinglun(){

    if(DY_czll_kqnc){

        suijiSleep();

        if(1==DY_czll_ncfs){

            //自定义评论

            if(DY_czll_plnr==null||DY_czll_plnr==""){

                return;

            }

        }

        var checkItem=text("说点什么...").findOne(1000);//获取评论按钮

        if(checkItem!=null){

            var msgStr=DY_czll_plnr;

            if(1!=DY_czll_ncfs){

            }

            checkItem.parent().click();

            sleep(1000);

            var huifuEditView = className("android.widget.EditText").findOne(1000);//找到输入框

            if(huifuEditView!=null){

                huifuEditView.setText(msgStr);

                var sendBtn=desc("发送").findOne();

                sendBtn.click();

                log("评论内容:"+msgStr);

                sleep(500);

            }

        }else{

            console.warn("未找到评论按钮");

        }

  }

}

相关文章:

抖音自动养号脚本+抖音直播控场脚本

功能描述 一.抖音功能 1.垂直浏览 2.直播暖场 3.精准引流 4.粉丝留言 5.同城引流 6.取消关注 7.万能引流 8.精准截流 9.访客引流 10.直播间引流 11.视频分享 12.榜单引流 13.搜索引流 14.点赞回访 15.智能引流 16.关注回访 介绍下小红书数据挖掘 搜索关键词&…...

uvm中transaction的response和id的解读

在公司写代码的时候发现前辈有一段这样的代码&#xff1a; ....//其他transaction uvm_create(trans);........ uvm_send(trans); tmp_id trans.get_transaction_id(); get_response(rsp,tmp_id); 如果前面有其他transaction&#xff0c;这段代码里的get_response不带id的话…...

第四节(1):EXCEL中判断一个WORD文件是否被打开

《VBA信息获取与处理》教程(10178984)是我推出第六套教程&#xff0c;目前已经是第一版修订了。这套教程定位于最高级&#xff0c;是学完初级&#xff0c;中级后的教程。这部教程给大家讲解的内容有&#xff1a;跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网…...

java.util.concurrent.locks.Condition详解

Condition翻译成中文是“条件”&#xff0c;一般我们称其为条件变量&#xff0c;每一个Condition对象都通过链表保存了一个队列&#xff0c;我们称之为条件队列。 当然了&#xff0c;这里所说的Condition对象一般指的是Condition接口的实现类ConditionObject&#xff0c;比如我…...

选择适合变更管理的产品开发工具的要点和建议

什么是变更管理&#xff1f; 变更管理是指导组织改进的学科。由于可观察到的行为变化&#xff0c;它会导致永久性变化。它确保您的组织以彻底、有序和可持续的方式学习和改进。成功的改进项目需要个人和团队保持一致&#xff0c;他们有共同的愿景&#xff0c;他们知道如何定义…...

小程序 词云图 echarts-for-weixin-wordcloud

GitHub - clydee-geng/echarts-for-weixin-wordcloud: echarts词云微信小程序版 这个是适配与小程序版的词云图&#xff0c;之前有找到ucharts来代替&#xff0c;但是ucharts的词云图功能有两个缺点&#xff1a;1.无法根据值的大小显示词云图的大小&#xff1b;2.显示的顺序是…...

VScode配置Jupyter

环境 安装步骤 1、插件安装 2、更改pip加速源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple 参考&#xff1a;vscode python配置pip源 ​​​​​​​ 【Python学习】Day-00 Python安装、VScode安装、pip命令、镜像源配置、虚拟环境 3、建…...

java模拟GPT流式问答

流式请求gpt并且流式推送相关前端页面 1&#xff09;java流式获取gpt答案 1、读取文件流的方式 使用post请求数据&#xff0c;由于gpt是eventsource的方式返回数据&#xff0c;所以格式是data&#xff1a;&#xff0c;需要手动替换一下值 /** org.apache.http.client.metho…...

【好玩】如何在github主页放一条贪吃蛇

前言 &#x1f34a;缘由 github放小蛇&#xff0c;就问你烧不烧 起因看到大佬github上有一条贪吃蛇扭来扭去&#xff0c;觉得好玩&#xff0c;遂给大家分享一下本狗的玩蛇历程 &#x1f95d;成果初展 贪吃蛇 &#x1f3af;主要目标 实现3大重点 1. github设置主页 2. git…...

顶顶通ASR安装配置说明

联系顶顶通申请Asrproxy授权&#xff0c;勾选asrserver模块。 下载语音识别模型 链接&#xff1a;https://pan.baidu.com/s/1IuDkDeytZOqf7tAbIb6h1Q 提取码&#xff1a;6vg6 安装asrproxy到/ddt/asrproxy,模型解压到 /ddt/asrproxy/model 对接mod_vad asrproxy.json 配置如…...

VMware和别的服务器 ,组建局域网那些事 。

利用VMware &#xff0c;实现组件局域网、有可能会受限于WiFi&#xff08;路由器&#xff09; 。 通常不会&#xff0c;除非做了网关设置 相关知识&#xff1a; 禁用局域网隔离&#xff08;LAN Isolation&#xff09;&#xff1a; 某些路由器提供了一个选项&#xff0c;允许您禁…...

自监督DINO论文笔记

论文名称&#xff1a;Emerging Properties in Self-Supervised Vision Transformers 发表时间&#xff1a;CVPR2021 作者及组织&#xff1a; Facebook AI Research GitHub&#xff1a;https://github.com/facebookresearch/dino/tree/main 问题与贡献 作者认为self-supervise…...

计算机视觉: 基于隐式BRDF自编码器的文生三维技术

论文链接: MATLABER: Material-Aware Text-to-3D via LAtent BRDF auto-EncodeR 背景 得益扩散模型和大量的text - image 成对的图片&#xff0c; 现在文生2D的模型已经比较成熟的框架和模型&#xff0c;主流的技术比如说stable diffusion 和 midjourney 以及工业领域runway 等…...

分类预测 | MATLAB实现KOA-CNN-BiLSTM开普勒算法优化卷积双向长短期记忆神经网络数据分类预测

分类预测 | MATLAB实现KOA-CNN-BiLSTM开普勒算法优化卷积双向长短期记忆神经网络数据分类预测 目录 分类预测 | MATLAB实现KOA-CNN-BiLSTM开普勒算法优化卷积双向长短期记忆神经网络数据分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.MATLAB实现KOA-CNN-BiLST…...

Java队列相关面试题

ArrayBlockingQueue 1、ArrayBlockingQueue是什么&#xff1f;它与LinkedList和LinkedBlockingQueue有何区别&#xff1f; ArrayBlockingQueue是一个基于数组的有界阻塞队列&#xff0c;可以在队列的两端进行插入和删除操作。 与LinkedList不同&#xff0c;ArrayBlockingQueu…...

水库大坝除险加固安全监测系统解决方案

一、系统背景 为贯彻落实《办公厅关于切实加强水库除险加固和运行管护工作的通知》&#xff08;〔2021〕8号&#xff09;要求&#xff0c;完成“十四五”小型病险水库除险加固、雨水情测报和大坝安全监测设施建设任务&#xff0c;规范项目管理&#xff0c;消除安全隐患&#xf…...

android native C++编程实现数据库加密sqlcipher

sqlcipher是sqlite的加版本&#xff0c;分为免费版和收费版。 这里研究的是开源的免费版 https://github.com/sqlcipher/sqlcipher Android码源默认提供了sqlite的native&#xff0c;jni和java版本&#xff0c;但没有提供sqlcipher&#xff0c;开发用到需要自己添加。 sqlc…...

第五节 C++ 循环结构(算法)

文章目录 前言介绍1. for 语句1.1 语法结构1.2 语法流程的执行过程1.2.1 案例 1:循环的正序输入和倒序输入1.2.2 案例2 : 求1~n的平方数1.2.3 案例 3: 求输入a和b,求a~b区间数. 1.3 for 循环案例练习1.3.1 求最大值与最小值1.3.2 计算奇数和和偶数和1.3.3 计算平均气温与最高气…...

接口与抽象类的区别

a、抽象类不能被实例化只能被继承&#xff1b;b、包含抽象方法的一定是抽象类&#xff0c;但是抽象类不一定含有抽象方法&#xff1b;c、抽象类中的抽象方法的修饰符只能为public或者protected&#xff0c;默认为public&#xff1b;d、一个子类继承一个抽象类&#xff0c;则子类…...

短视频账号矩阵系统源码saas===独立部署

前言&#xff1a; 短视频账号矩阵是指在不同的短视频平台上&#xff0c;一个个人或企业所拥有的账号数量和分布情况。由于不同的短视频平台受众人群和内容类型等因素不同&#xff0c;因此拥有更多账号可以在更广泛的受众中传播内容&#xff0c;提高曝光度和流量。短视频账号矩阵…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试

作者&#xff1a;Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位&#xff1a;中南大学地球科学与信息物理学院论文标题&#xff1a;BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接&#xff1a;https://arxiv.…...

Debian系统简介

目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版&#xff…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异&#xff0c;它们的数据同步要求既要保持数据的准确性和一致性&#xff0c;又要处理好性能问题。以下是一些主要的技术要点&#xff1a; 数据结构差异 数据类型差异&#xff…...

uniapp中使用aixos 报错

问题&#xff1a; 在uniapp中使用aixos&#xff0c;运行后报如下错误&#xff1a; AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中&#xff0c;CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时&#xff0c;通常会导致应用响应缓慢&#xff0c;甚至服务不可用&#xff0c;严重影响用户体验和业务运行。因此&#xff0c;掌握一套科学有效的CPU飙高问题排查方法&…...