22.07.2022, 15:10
Hallo,
ich nutze Tampermonkey in chrome und wollte diesen Code nutzen:
Im Kern soll es Folgendes machen:
Falls die vorl,iegende Seite http://google.de ist, dann wechsle zur Seite mit gleicher URl und hinten einem /search?q=hierstehteinString dran.
kurz das,w as rauskommt wenn man in google nach was sucht.
Nun ruft mir das Skript zwar von der google hauptseite wi gewünscht auch eine passende Ergebnisseite auf, dort wird mir aber am Tampermonkeyzeichen angezeigt dass das Skript hier nicht angewendet wird bzw. überhaupt nicht anwendbar ist.
Aber woran liegt es?
Ich lasse es mit
sprichwörtlich überall ausführen und der Regex Ausdruck sollte, hoffentlich , auch passen.
Woran scheitert es hier?
Und bitte, bitte, lass die Antwort nicht der "Same Origin Policy" Bullshit sein, wegen dem Mist vemreide ich shcon extra das simple window.open
ich nutze Tampermonkey in chrome und wollte diesen Code nutzen:
Code:
// ==UserScript==
// @name blabla
// @namespace blabla
// @version 0.1
// @description try to take over the world!
// @author You
// @match *
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js
// @run-at document-end
// @grant none
// ==/UserScript==
$(document).ready(function(){
let urlhier = location.href;
const reggooglemain =/https?:\/\/(www\.)?google.de(\/)?/;
const reggoogleres=/https?:\/\/(www\.)?google.de(\/)search\?q\=.*/;
//https://www.google.de/search?q=abc
if(urlhier.match(reggooglemain)){google();return;}
if(urlhier.match(reggoogleres)){location.reload();googleres();return;}
async function google(){
var ranstring=getrandomstring();
location.replace("https://www.google.de/search?q="+ranstring);
};
async function googleres(){
var links=document.querySelectorAll("a[href]");
var wind=null;
for(let i=0;i<3;i++){
console.log("links[i]="+links[i]);
wind=window.open(links[Math.floor(Math.random()*links.length)].href);
//loop for
//sleep
//scroll
for(let i=0;i<4;i++){
try{
wind.scrollTo(200, 0);
await sleep(300);
wind.scroll(0,0);
}catch(e){}
}
wind.close();
}
};
}
);
function getrandomstring() {
var h=Math.floor(Math.random()*9);
var result = '';
var charactersup = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
var characterslow='abcdefghijklmnopqrstuvwxyz';
result = result+charactersup.charAt(Math.floor(Math.random() *
charactersup.length));
for ( var i = 1; i < h; i++ ) {
result += characterslow.charAt(Math.floor(Math.random() *
characterslow.length));
}
return result;
}
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
Falls die vorl,iegende Seite http://google.de ist, dann wechsle zur Seite mit gleicher URl und hinten einem /search?q=hierstehteinString dran.
kurz das,w as rauskommt wenn man in google nach was sucht.
Nun ruft mir das Skript zwar von der google hauptseite wi gewünscht auch eine passende Ergebnisseite auf, dort wird mir aber am Tampermonkeyzeichen angezeigt dass das Skript hier nicht angewendet wird bzw. überhaupt nicht anwendbar ist.
Aber woran liegt es?
Ich lasse es mit
Code:
//@match *
Woran scheitert es hier?
Und bitte, bitte, lass die Antwort nicht der "Same Origin Policy" Bullshit sein, wegen dem Mist vemreide ich shcon extra das simple window.open