|

分享源码
界面截图: |
- |
是否带模块: |
纯源码 |
备注说明: |
- |
本帖最后由 飞宇 于 2024-10-16 23:12 编辑
一个 Tampermonkey 脚本,本人测试么得什么效果,希望衍生,只是给个思路。
因为现在论坛这方面的玩意都收费,我只是给个方向。。。。。
虽然不对,但是大致都是这么干的,只是我方向可能有问题吧。。。。继续衍生 拒绝垄断和漫天要价。
浏览器指纹.txt
(6.81 KB, 下载次数: 47)
// ==UserScript==
// @name 增强版浏览器指纹伪造
// @Namespace https://125.confly.eu.org/
// @Version 1.0
// @description 随机化浏览器指纹。
// @author You
// @match *://*/*
// @grant none
// @run-at document-start
// ==/UserScript==
(function() {
'use strict';
// 随机化User-Agent
const userAgentList = [
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.1 Safari/605.1.15",
"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:90.0) Gecko/20100101 Firefox/90.0"
];
const randomUserAgent = userAgentList[Math.floor(Math.random() * userAgentList.length)];
Object.defineProperty(navigator, 'userAgent', { value: randomUserAgent, writable: false });
// 随机化屏幕分辨率
const randomWidth = Math.floor(Math.random() * (1920 - 1280 + 1)) + 1280;
const randomHeight = Math.floor(Math.random() * (1080 - 720 + 1)) + 720;
Object.defineProperty(screen, 'width', { value: randomWidth, writable: false });
Object.defineProperty(screen, 'height', { value: randomHeight, writable: false });
// 随机化Canvas指纹
const originalGetImageData = CanvasRenderingContext2D.prototype.getImageData;
CanvasRenderingContext2D.prototype.getImageData = function(x, y, width, height) {
const imageData = originalGetImageData.call(this, x, y, width, height);
展示一部分,剩下的在 附件里~!~!// @run-at document-start 这句别删按理说比较重要~!查资料吧~!
|
评分
-
查看全部评分
|