67 Star 1.1K Fork 278

一只小白猿 / 抖音弹幕抓取数据推送

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
livePage.js 1.69 KB
一键复制 编辑 原始数据 按行查看 历史
一只小白猿 提交于 2024-03-10 03:41 . 支持 自动暂停页面播放
//上下文常量将在上方由程序注入
//const PROCESS_NAME = "进程名";
/**
* Web/PC端 直播页JS注入
* 正则: @".*:\/\/live.douyin\.com\/\d+"
**/
/*注入脚本 定时触发全局keydown,避免直播流被无操作阻断*/
// 创建一个虚拟的按键事件
const simulatedEvent = new KeyboardEvent('keydown', {
key: 'Virtual_Alt',
keyCode: 18, //alt
bubbles: true,
cancelable: true
});
// 获取要分派事件的目标元素,例如文档的根元素
const targetElement = document.documentElement;
// 设置定时器,每隔60秒模拟一次按键事件
setInterval(() => {
targetElement.dispatchEvent(simulatedEvent);
}, 1000 * 60);
// 订阅 keydown 事件 (Debug)
targetElement.addEventListener('keydown', event => {
if (event.key == "Virtual_Alt") {
console.log('[防挂机处理] 按下了', event.key);
}
});
/*禁止关闭 Websocket*/
WebSocket.prototype.close = function () { return; }
/*判断是否自动关闭 */
//获取路由参数
function getQueryString(name) {
let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
let r = window.location.search.substr(1).match(reg); //search,查询?后面的参数,并匹配正则
if (r != null) return unescape(r[2]);
return null;
}
if (getQueryString("pause") === "true" || AUTOPAUSE === true) {
//自动暂停一次播放
var pauseIdx = setInterval(() => {
let playbtn = document.querySelector(".xgplayer-play");
if (!playbtn) return;
let status = playbtn.getAttribute("data-state");
if (status !== "play") return;
playbtn.click();
clearInterval(pauseIdx);
console.log("已自动暂停播放");
}, 500);
}
1
https://gitee.com/haodong108/dy-barrage-grab.git
git@gitee.com:haodong108/dy-barrage-grab.git
haodong108
dy-barrage-grab
抖音弹幕抓取数据推送
master

搜索帮助