- // ==UserScript==
- // @name auto click load more
- // @description auto click load more useful button
- // @version 1.1
- // @grant none
- // @include http://www.youtube.com/*
- // @include https://www.youtube.com/*
- // @include http://www.zhihu.com/*
- // @include https://www.zhihu.com/*
- // @include https://vcrypt.net/*
- // @include http://www.instagram.com*
- // @include https://www.instagram.com*
- // @include http://www.auroravid.to/*
- // @include http://www.porntube.com/videos/*
- // @include http://www.85porn.net/video/*
- // @include http://www.85po.com/video/*
- // @include http://www.fastvideo.me/*
- // @include http://www.rapidvideo.org/*
- // @include http://swzz.xyz/*
- // @include https://www.keeplinks.eu/*
-
- // @include http://vcrypt.net/*
-
- // @namespace https://gf.qytechs.cn/
- // ==/UserScript==
-
- var time_interval = 500; //运行间隔(毫秒)
- var lo; //当前网址 *html5的历史前进后退功能导致页面载入不刷新,例如Y2B,要不断检测页面对应的按钮
- var dis = 4000; //load_more按钮距离底边距离像素
-
- var autotimer = setInterval(auto,time_interval);
-
- var sites = [
- {
- "urls":[
- /https?:\/\/www.rapidvideo.org/],
- "btns":[{
- "id":"#proceed_to.button.green",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/vcrypt.net/],
- "btns":[{
- "id":"input.btncontinue",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/www.keeplinks.eu/],
- "btns":[{
- "id":"a#btnsubmit",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/www.auroravid.to/],
- "btns":[{
- "id":"Continue to the video",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/swzz.xyz/],
- "btns":[{
- "id":"a.btn-wrapper",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/www.auroravid.to/],
- "btns":[{
- "id":"Continue to the video",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/www.fastvideo.me/],
- "btns":[{
- "id":"#btn_download.button.green",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/www.youtube.com\/user\/.+/gi,
- /https?:\/\/www.youtube.com\/channel\/.+/gi],
- "btns":[{
- "id":".load-more-text",
- "distance":0}]
- }, //youtube_user_page
- {
- "urls":[
- /https?:\/\/www.youtube.com\/watch\?.+/gi,
- /https?:\/\/www.youtube.com\/watch2\?.+/gi],
- "btns":[{
- "id":"[data-uix-load-more-target-id=comment-section-renderer-items]",
- "distance":0},
- {
- "id":"#watch-more-related-button",
- "distance":0}]
- }, //youtube_watch_page
- {
- "urls":[
- /https?:\/\/www.zhihu.com\/question\/.+/gi,
- /https?:\/\/www.zhihu.com\/people\/.+/gi,
- /https?:\/\/www.zhihu.com\/search\?.+/gi],
- "btns":[{
- "id":"[aria-role=button]",
- "distance":0}]
- }, //zhihu_question
- {
- "urls":[
- /https?:\/\/[a-z]+.pornhub.com\/view_video.php\?viewkey=.+/gi,
- /https?:\/\/[a-z]+.pornhubpremium.com\/view_video.php\?viewkey=.+/gi],
- "btns":[{
- "id":"a.greyButton.light.more_related_btn.nav-related",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/www.porntube.com\/videos\/.+/gi],
- "btns":[{
- "id":"button.btn.btn-simple.btn-large.load-more-videos",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/www.85porn.net\/video\/.+/gi,
- /https?:\/\/www.85po.com\/video\/.+/gi],
- "btns":[{
- "id":"a[id^=\"next_related_videos\"]",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/[a-z]+.pornhub.com\/feeds/gi,
- /https?:\/\/[a-z]+.pornhubpremium.com\/feeds/gi,
- /https?:\/\/[a-z]+.pornhub.com\/users/gi,
- /https?:\/\/[a-z]+.pornhubpremium.com\/users/gi],
- "btns":[{
- "id":"#moreDataBtn",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/www.instagram.com\/?.+/gi],
- "btns":[{
- "id":"a._oidfu",
- "distance":0}]
- },
- {
- "urls":[
- /https?:\/\/www.youtube.com\/channel777\/.+/gi,
- /https?:\/\/www.youtube.com\/channel999\/.+/gi],
- "btns":[{
- "id":"bt3",
- "distance":0},
- {
- "id":"bt4",
- "distance":0}]
- } // example
- ]
-
- function auto()
- {
- try
- {
- lo = window.location; //当前网址
- for ( x in sites )
- {
- for ( u in sites[x].urls )
- {
- //sites[x].urls[u].test(lo) 为什么连续2次,第2次就变成false呢
- //console.log("reg | "+sites[x].urls[u] +" url | "+lo + " | "+sites[x].urls[u].test(lo));
- //console.log("1_ "+sites[x].urls[u] + "2_ "+sites[x].urls[u].test(lo));
- if(sites[x].urls[u].test(lo))
- {
- //console.log("bbb");
- for ( b in sites[x].btns )
- {
- try
- {
- //console.log(sites[x].btns[b].distance+"|"+lo+"|"+sites[x].urls[u])
- //console.log(sites[x].btns[b].id)
- if(document.querySelector(sites[x].btns[b].id))
- {
- //console.log("|"+sites[x].btns[b].id);
-
- if(tob(document.querySelector(sites[x].btns[b].id))<dis && document.querySelector(sites[x].btns[b].id).getBoundingClientRect().top != sites[x].btns[b].distance)
- {
- sites[x].btns[b].distance = document.querySelector(sites[x].btns[b].id).getBoundingClientRect().top;
- document.querySelector(sites[x].btns[b].id).click();
- console.log("auto_click_load_more_1_times");
- }
- }
- }catch(e){console.log(e)}
- }
- }
- }
-
- }
- }catch(e)
- {
- console.log("error"+e);
- }
- }
-
- function tob(x) //返回元素上边到浏览器窗口底边距离,正值表示元素上边在浏览器底边以下的距离,负值表示元素在浏览器底边以上
- {
- var bh = document.documentElement.clientHeight;//浏览器可视高
- var ett = x.getBoundingClientRect().top;//元素距离浏览器上边高
- return ett - bh;
- }