-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
32 lines (29 loc) · 885 Bytes
/
script.js
File metadata and controls
32 lines (29 loc) · 885 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
javascript:(function(){
var scripts = document.getElementsByTagName("script"),
regex = /(?<=(\"|\'|\`))\/[a-zA-Z0-9_?&=\/\-\#\.]*?(?=(\"|\'|\`))/g,
results = new Set();
// Fetch external JS content
for (var i = 0; i < scripts.length; i++) {
var src = scripts[i].src;
if (src) {
fetch(src)
.then(res => res.text())
.then(text => {
for (let match of text.matchAll(regex)) {
results.add(match[0]);
}
})
.catch(err => console.log("Error fetching script:", err));
}
}
// Scan inline HTML
var pageHTML = document.documentElement.outerHTML;
for (let match of pageHTML.matchAll(regex)) {
results.add(match[0]);
}
// Write results after delay
function writeResults() {
results.forEach(url => document.write(url + "<br>"));
}
setTimeout(writeResults, 3000);
})();