235 lines
8.4 KiB
JavaScript
235 lines
8.4 KiB
JavaScript
|
chrome.runtime.sendMessage({
|
||
|
ty: 'get'
|
||
|
}, function (r) {
|
||
|
if (r) {
|
||
|
// 判断当前网站是否带有/search?q= 当搜索框搜索完后会执行这部分代码
|
||
|
if (location.href.indexOf('/search?q=') != -1) {
|
||
|
// 传递两个参数 按规定随机生成一个数字
|
||
|
function rd(n, m) {
|
||
|
var c = m - n + 1;
|
||
|
return Math.floor(Math.random() * c + n);
|
||
|
};
|
||
|
setTimeout(function () {
|
||
|
// 屏幕向下滚动 569px
|
||
|
scrollBy(0, 569);
|
||
|
setTimeout(function () {
|
||
|
scrollBy(0, 369);
|
||
|
setTimeout(function () {
|
||
|
// 随机点击一个链接
|
||
|
$('a h3').eq(rd(0, $('a h3').length - 1))[0].click();
|
||
|
}, 1000);
|
||
|
}, 1000);
|
||
|
}, 700);
|
||
|
// alert("执行了content.js文件 第一个 if里 条件是 location.href.indexOf('/search?q=') != -1")
|
||
|
}
|
||
|
// 进入邮箱页面 点击邮箱里内容链接
|
||
|
else if (location.href.startsWith('https://mail.google.com/')) {
|
||
|
if (location.href.startsWith('https://mail.google.com/mail/u/')) {
|
||
|
var mkeww = 0, mue = setInterval(function () {
|
||
|
if ($('[role="grid"] tbody>tr').length) {
|
||
|
clearInterval(mue);
|
||
|
setTimeout(function () {
|
||
|
$('[role="grid"] tbody>tr').eq(0)[0].click();
|
||
|
}, 1900);
|
||
|
} else {
|
||
|
mkeww++;
|
||
|
if (mkeww > 106) {
|
||
|
clearInterval(mue);
|
||
|
}
|
||
|
}
|
||
|
}, 500);
|
||
|
// alert("执行了content.js文件 第一个 if里 条件是 location.href.startsWith('https://mail.google.com/mail/u/')");
|
||
|
}
|
||
|
// alert("执行了content.js文件 第一个 if里 条件是 location.href.startsWith('https://mail.google.com/')");
|
||
|
}
|
||
|
// 进入用户界面 点击应用列表图标(不知道有啥用处)
|
||
|
else if (location.href.startsWith('https://accounts.google.com/ServiceLogin')) {
|
||
|
var mkeww = 0, mue = setInterval(function () {
|
||
|
if ($('form ul>li img').length) {
|
||
|
clearInterval(mue);
|
||
|
setTimeout(function () {
|
||
|
$('form ul>li img').eq(0)[0].click();
|
||
|
}, 1900);
|
||
|
} else {
|
||
|
mkeww++;
|
||
|
if (mkeww > 106) {
|
||
|
clearInterval(mue);
|
||
|
}
|
||
|
}
|
||
|
}, 500)
|
||
|
alert("执行了content.js文件 第一个 if里 条件是 location.href.startsWith('https://accounts.google.com/ServiceLogin')");
|
||
|
}
|
||
|
// 看长视频
|
||
|
else if (r == "youtube") {
|
||
|
// 点击长视频观看
|
||
|
setTimeout(function () {
|
||
|
wb = Math.round(Math.random() * $('div #contents ytd-rich-grid-row img').length);
|
||
|
if ($('div #contents ytd-rich-grid-row img').eq(wb).is('.yt-core-image--fill-parent-height'))
|
||
|
$('div #contents ytd-rich-grid-row img').eq(wb).click();
|
||
|
else
|
||
|
$('div #contents ytd-rich-grid-row img').eq(wb + 1).click();
|
||
|
}, 10000);
|
||
|
|
||
|
sum = 1;
|
||
|
// 循环播放 2分钟执行一次 执行5次后关闭
|
||
|
var dingshiqi = setInterval(function () {
|
||
|
if (sum == 5) {
|
||
|
clearInterval(dingshiqi);
|
||
|
// 关闭当前窗口的所有标签
|
||
|
const currentTab = window.location.href;
|
||
|
chrome.tabs.query({ currentWindow: true }, tabs => {
|
||
|
tabs.forEach(tab => {
|
||
|
if (tab.url !== currentTab) {
|
||
|
chrome.tabs.remove(tab.id);
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
}
|
||
|
setTimeout(function () {
|
||
|
//点击订阅 如果已经订阅过了就不用点
|
||
|
if ($('div ytd-subscribe-button-renderer yt-smartimation yt-button-shape button').eq(0).is('.yt-spec-button-shape-next--filled'))
|
||
|
$('div ytd-subscribe-button-renderer yt-smartimation yt-button-shape button').eq(0).click();
|
||
|
// 点赞
|
||
|
if ($('div ytd-segmented-like-dislike-button-renderer div ytd-toggle-button-renderer yt-button-shape button').is('.yt-spec-button-shape-next--tonal'))
|
||
|
$('div ytd-segmented-like-dislike-button-renderer div ytd-toggle-button-renderer yt-button-shape button').eq(0).click();
|
||
|
}, 5000);
|
||
|
$('button .yt-spec-button-shape-next--size-m').click();
|
||
|
next_vido = Math.round(Math.random() * $('contents ytd-compact-video-renderer div ytd-thumbnail a').length);
|
||
|
if (next_vido == $('contents ytd-compact-video-renderer div ytd-thumbnail a').length)
|
||
|
next_vido = next_vido - 1;
|
||
|
$('#contents ytd-compact-video-renderer div ytd-thumbnail a').eq(next_vido)[0].click();
|
||
|
sum += 1;
|
||
|
}, 240000);
|
||
|
// 1200000=20分钟
|
||
|
// 240000=4分钟
|
||
|
}
|
||
|
// 看短视频
|
||
|
else if (r == "youtube/shorts") {
|
||
|
i = 0;
|
||
|
// 随机执行次数
|
||
|
randTime = Math.floor(Math.random() * 16) + 15;
|
||
|
console.log('执行', randTime, '次');
|
||
|
|
||
|
// 根据次数随机每次观看的时长
|
||
|
const list = [];
|
||
|
for (let i = 0; i < randTime; i++) {
|
||
|
// 生成 1 到 5 之间的随机整数
|
||
|
const randomNum = Math.floor(Math.random() * 44) + 5; //44
|
||
|
// 将随机数添加到列表中
|
||
|
list.push(randomNum * 1000);
|
||
|
}
|
||
|
console.log('每个视频的观看时长:', list);
|
||
|
|
||
|
// 首次进入判断是否播放
|
||
|
var playing = document.querySelector('div.playing-mode') == null ? false : true
|
||
|
var paused = document.querySelector('div.paused-mode') == null ? false : true
|
||
|
console.log('playing', playing, 'paused', paused);
|
||
|
if (playing) {
|
||
|
console.log('首次进入在播放!');
|
||
|
} else {
|
||
|
setTimeout(function () {
|
||
|
var playButton = document.getElementsByClassName('ytp-large-play-button ytp-button')[0];
|
||
|
playButton.click();
|
||
|
console.log('点击了播放!');
|
||
|
}, 5000)
|
||
|
}
|
||
|
|
||
|
// 执行
|
||
|
var dingshiqi_duanshipin = setInterval(() => {
|
||
|
run(randomTime = list[i])
|
||
|
}, list[i] + 2000);
|
||
|
|
||
|
// 定义一个执行函数
|
||
|
function run(randomTime) {
|
||
|
// 执行randTime次后停止
|
||
|
console.log('总计:', randTime, '次,当前第:', i + 1, '次,观看时长:', randomTime / 1000, 's');
|
||
|
if (i == randTime) {
|
||
|
console.log('已经执行', randTime, '次,关闭当前标签页!')
|
||
|
clearInterval(dingshiqi_duanshipin);
|
||
|
window.close();
|
||
|
}
|
||
|
|
||
|
// 点赞
|
||
|
var button = document.querySelector('.yt-spec-button-shape-next--icon-button');
|
||
|
console.log('是否已点赞:',button.getAttribute('aria-pressed'));
|
||
|
button.click()
|
||
|
|
||
|
bao = $('#shorts-inner-container ytd-reel-video-renderer');
|
||
|
for (j = 0; j < bao.length; j++) {
|
||
|
// 如果是当前正在播放的视频 点赞+订阅
|
||
|
if (typeof ($(bao[j]).attr('is-active')) == "string") {
|
||
|
dianzan = $(bao[j]).find('button')[23];
|
||
|
dingyue = $(bao[j]).find('button')[20];
|
||
|
// 点赞
|
||
|
if ($(dianzan).is('.yt-spec-button-shape-next--tonal'))
|
||
|
$(dianzan).click();
|
||
|
// 订阅
|
||
|
if ($(dingyue).is('.yt-spec-button-shape-next--filled'))
|
||
|
$(dingyue).click();
|
||
|
j = bao.length;
|
||
|
}
|
||
|
}
|
||
|
// 下一集 randomTime - 2s
|
||
|
setTimeout(function () {
|
||
|
// 下一集
|
||
|
$('div #navigation-button-down button').click();
|
||
|
console.log('点击了下一个视频')
|
||
|
}, randomTime);
|
||
|
i++;
|
||
|
}
|
||
|
|
||
|
// 定时器
|
||
|
let timer = setTimeout(function () {
|
||
|
location.reload()
|
||
|
console.log("页面长时间无响应");
|
||
|
}, 60000); // 设置超时时间为 5 秒钟
|
||
|
|
||
|
// 在每次页面有响应的时候,清除计时器即可
|
||
|
window.addEventListener('click', function () {
|
||
|
console.log("页面有响应");
|
||
|
// 清除计时器
|
||
|
clearTimeout(timer);
|
||
|
// 判断是否再播放
|
||
|
var playing = document.querySelector('div.playing-mode') == null ? false : true
|
||
|
var paused = document.querySelector('div.paused-mode') == null ? false : true
|
||
|
console.log('播放:', playing, '暂停:', paused);
|
||
|
if (playing) {
|
||
|
console.log('已播放!');
|
||
|
} else {
|
||
|
var playButton = document.getElementsByClassName('ytp-large-play-button ytp-button')[0];
|
||
|
playButton.click();
|
||
|
console.log('点击了播放!');
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
else {
|
||
|
function getertText_click(aa, Text) {//输入后再点击
|
||
|
aa.dispatchEvent(new Event('click', { bubbles: true }));
|
||
|
aa.dispatchEvent(new Event('focus', { bubbles: true }));
|
||
|
const set = Object.getOwnPropertyDescriptor(aa.__proto__, 'value').set
|
||
|
set.call(aa, Text);
|
||
|
aa.dispatchEvent(new Event('input', { bubbles: true }))
|
||
|
aa.dispatchEvent(new Event('focus', { bubbles: true }))
|
||
|
aa.dispatchEvent(new Event('change', { bubbles: true }))
|
||
|
aa.dispatchEvent(new Event('blur', { bubbles: true }))
|
||
|
}
|
||
|
var mue = setInterval(function () {
|
||
|
if ($('[name="q"]').length) {
|
||
|
clearInterval(mue);
|
||
|
setTimeout(function () {
|
||
|
getertText_click($('[name="q"]')[0], r);
|
||
|
mue = setInterval(function () {
|
||
|
if ($('[name="btnK"]').length) {
|
||
|
clearInterval(mue);
|
||
|
$('[name="btnK"]').eq(0)[0].click();
|
||
|
}
|
||
|
}, 1000);
|
||
|
}, 2000);
|
||
|
}
|
||
|
}, 500);
|
||
|
}
|
||
|
// alert("执行了content.js文件 第一个 if");
|
||
|
}
|
||
|
// alert("执行了content.js文件");
|
||
|
});
|