From a3125fdc8cf12c6604ee3bed1aa4c5751dbc7b03 Mon Sep 17 00:00:00 2001 From: lingling <1077478963@qq.com> Date: Mon, 19 Aug 2024 17:05:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/popup.js | 80 ++++++--------- lib/content.js | 257 +++++-------------------------------------------- manifest.json | 2 +- 3 files changed, 57 insertions(+), 282 deletions(-) diff --git a/js/popup.js b/js/popup.js index bcd5f5f..b0a7707 100644 --- a/js/popup.js +++ b/js/popup.js @@ -1,57 +1,37 @@ +/* + * @Author: lingling 1077478963@qq.com + * @Date: 2024-08-19 09:47:04 + * @LastEditors: lingling 1077478963@qq.com + * @LastEditTime: 2024-08-19 16:48:39 + * @FilePath: \谷歌自动搜索邮箱自动点击v3\js\popup.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ $(function () { - // var id = 0, due = ['Dell', ' Lenovo ', "ASUS"], kme = 0 , name=""; - var name=""; - - chrome.tabs.create({ url: "https://www.youtube.com/" }, e => { - name="youtube"; - }) - - // 延时器作用 过一点时间执行一次 - // setTimeout(function () { - // chrome.tabs.create({ url: "https://www.google.com/" }, e => { - // kme = 1; - // id = e.id; - // }); - // setTimeout(function () { - // chrome.tabs.create({ url: "https://www.google.com/" }, e => { - // kme = 2; - // id = e.id; - // }); - // setTimeout(function () { - // chrome.tabs.create({ url: "https://mail.google.com/" }, e => { - // id = e.id; - // }); - // }, 20000); - // }, 20000); - // }, 20000); - - // 定时1分30秒后 执行新建页面打开油管 + var id = 0 + var name = ""; setTimeout(function () { - chrome.tabs.create({ url: "https://www.youtube.com/shorts/" }, e => { - name="youtube/shorts"; - }); - + chrome.tabs.create( + { + url: "https://www.baidu.com/", + }, + (e) => { + name = "naver"; + id = e.id; + } + ); }, 2000); // 浏览器监听事件 每当有新页面生成就会执行 - chrome.runtime.onMessage.addListener( - function (request, sender, sendResponse) { - // 判断是产生一个新页面是 - if (request.ty == 'get') { - // if (sender.tab.id == id) { - // sendResponse(due[kme]); - // } - // else { - // sendResponse(name); - // } - sendResponse(name); - } - return true; + chrome.runtime.onMessage.addListener(function ( + request, + sender, + sendResponse + ) { + // 判断是产生一个新页面是 + if (request.ty == "get") { + sendResponse(name,id); } - ); -}) - -//*[@id="like-button"]/yt-button-shape/label/button/yt-touch-feedback-shape/div/div[2] - - + return true; + }); +}); diff --git a/lib/content.js b/lib/content.js index bf7f1fe..d49ebf7 100644 --- a/lib/content.js +++ b/lib/content.js @@ -1,234 +1,29 @@ -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); +//延迟函数解决魔鬼定时器问题 +function delay(n) { + return new Promise(function (resolve) { + setTimeout(resolve, n * 1000); + }); +} - 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, '次'); +//naver使用函数 +const naver = async (r, id) => { + $("#kw").val("docker"); + await delay(1); + $("#su").click(); +}; - // 根据次数随机每次观看的时长 - 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); +chrome.runtime.sendMessage( + { + ty: "get", + }, + function (r, id) { + switch (r) { + case "naver": + naver(r, id); + break; - // 首次进入判断是否播放 - 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文件"); -}); + default: + break; + } + } +); diff --git a/manifest.json b/manifest.json index df7d8ed..040b4f6 100644 --- a/manifest.json +++ b/manifest.json @@ -15,7 +15,7 @@ "content_scripts": [ { "matches": [ - "https://www.youtube.com/*","https://www.youtube.com/shorts/*","https://www.google.com.hk/","https://www.google.com.hk/search?q=*","https://www.google.com/","https://www.google.com/search?q=*","https://mail.google.com/*","https://accounts.google.com/ServiceLogin*" + "https://www.naver.com/*","https://www.baidu.com/*" ], "js": [ "lib/jquery-3.3.1.min.js",