爱丽丝 油猴脚本开发日志

2023-10-29 16:50

本文主要是介绍爱丽丝 油猴脚本开发日志,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

**

爱丽丝 油猴脚本开发日志

**
21年2月23日:爱丽丝不再公开转播信息,此脚本已失效。

8月14日:现在支持生成直播源为T台和TC台的URL了,T台测试成功,TC台暂时没有样本,不过估计应该也是可以的。
在这里插入图片描述

8月10日:修复错误生成T台和TC台URL的问题,原本是按照油管的URL生成的错误网址,还是不能生成URL,只是不再生成错误的URL,效果如图:
在这里插入图片描述
在这里插入图片描述
8月8日:更新2.0版本,通过JQuery的get()方法获取数据,打开爱丽丝的一瞬间全部直播信息都有啦!剩下的替换html和1.0没什么区别

8月5日:由于ddalice的关闭,对于爱丽丝自动转播的频道的获取变得复杂了(其实也没多复杂),需要登录爱丽丝,查看正在直播的vtuber,查看转播平台,复制转播ID,补全转播网址。
开发本脚本的目的就是为了实现以上操作的自动化,预期效果图
在这里插入图片描述

如图所示,蓝色的字,即直播间ID节目标题就是通往直播间的链接,直播间ID***通往***转播间节目标题***则通往***油管
目前的问题1.翻页时失效,后面几页显示的都是第一页的链接,如图:
在这里插入图片描述

2.转播间只支持bilibili和douyu,源直播间只支持youtube,而爱丽丝是支持包括TC台,T台等直播平台的
3.即使是2.0的代码,也不够效率,实际上2.0的核心:get()方法请求数据是多余的,因为在打开爱丽丝的时候本来就会请求一个tasklist.json,用get()方法则又请求了一次,试想如果每个访问爱丽丝的用户都装了我这个脚本,那么对爱丽丝的负担将会是原来的2倍!更何况第二次请求的延迟直接决定了URL生成的速度,这将会影响到用户的体验。有没有一个方法,可以获取到已经请求获得的tasklist.json呢?

解决思路:似乎爱丽丝是由Ajax动态加载的网页,往这方面去思考
,get()方法请求tasklist.json虽然是不效率的,但是我们可以由此延伸想到,是否可以用这个方法请求到节目频道呢?如果获取到了节目频道的数据,那么T台,TC台跳转的问题也就迎刃而解了,因为T台,TC台直播间的地址,是由主站地址加上频道地址构成的固定地址,而不是像油管那样每一场直播的地址都不一样。
全新2.0代码:

// ==UserScript==
// @name         爱丽丝 直播间跳转2.0
// @namespace    http://tampermonkey.net/
// @version      0.1.6
// @description  try to take over the world!
// @author       You
// @match        https://*/main/broadcast
// @grant        none
// @require https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js
// ==/UserScript==(function () {'use strict';async function getStream() //获取直播间数据{return new Promise(resolve => {$.get("https://*/api/broadcast/taskList.json",//*手动替换为爱丽丝主站域名function (resp) {return resolve(resp);});});}async function getChannel() //获取频道数据{return new Promise(resolve => {$.get("https://*/api/channel/channelList.json",//*手动替换为爱丽丝主站域名function (resp) {return resolve(resp);});});}function exchange(stdata, url_, url_2) {let pn = parseInt(document.querySelector('.number.active').innerText); //获取当前页码var cell_ = document.querySelectorAll('td.el-table_1_column_2'); //转播间IDvar cell_2 = document.querySelectorAll('td.el-table_1_column_5'); //直播间标题for (let i = 0; i < 10; i++) {if ((i + (pn - 1) * 10) >= stdata.length)break;if (url_[i + (pn - 1) * 10]) {cell_[i].innerH

这篇关于爱丽丝 油猴脚本开发日志的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/302000

相关文章

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

SpringBoot日志级别与日志分组详解

《SpringBoot日志级别与日志分组详解》文章介绍了日志级别(ALL至OFF)及其作用,说明SpringBoot默认日志级别为INFO,可通过application.properties调整全局或... 目录日志级别1、级别内容2、调整日志级别调整默认日志级别调整指定类的日志级别项目开发过程中,利用日志

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10

Java调用Python脚本实现HelloWorld的示例详解

《Java调用Python脚本实现HelloWorld的示例详解》作为程序员,我们经常会遇到需要在Java项目中调用Python脚本的场景,下面我们来看看如何从基础到进阶,一步步实现Java与Pyth... 目录一、环境准备二、基础调用:使用 Runtime.exec()2.1 实现步骤2.2 代码解析三、

Python脚本轻松实现检测麦克风功能

《Python脚本轻松实现检测麦克风功能》在进行音频处理或开发需要使用麦克风的应用程序时,确保麦克风功能正常是非常重要的,本文将介绍一个简单的Python脚本,能够帮助我们检测本地麦克风的功能,需要的... 目录轻松检测麦克风功能脚本介绍一、python环境准备二、代码解析三、使用方法四、知识扩展轻松检测麦