这个有现成的、可以参考
https://github.com/musiclover789/luna
其中修改了、浏览器大部分可以识别的指纹信息、支持各种类型proxy 和防识别能力
完全可以单独使用、或者搭配自动化框架使用、他自己也支持了一个视觉可视化的框架,速度很快。
举一个程序调用的例子:
//设置自己需要的指纹
args := []string{
/***
a、luna_user_agent 这个参数目前仅会使得 navigator.userAgent 的值发生变化;也就是说http、http2、等协议层 仍然不会被替换;如果需要替换往下看。
b、headless 模式下、navigator.userAgent 也是会被替换;并不会显示任何headless 的userAgent;
*/
"--luna_user_agent=Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36",
/***
a、navigator.platform 值被替换
*/
"--luna_platform=win64",
/***
a、timeZone 经过测试、时区均会被替换成指定的时区
b、timeZone 的时区偏移量也是自动计算的
c、测试js :
const date = new Date();
const timeZone = date.getTimezoneOffset();
const timeZoneOffset = -timeZone / 60;
console.log("Time Zone: " + Intl.DateTimeFormat().resolvedOptions().timeZone);
console.log("Time Zone Offset: " + timeZoneOffset);
*/
"--luna_timezone=Europe/London",
/***
languages: 以下均会生效
a、navigator.language
b、new Intl.DateTimeFormat().resolvedOptions().locale
说明:理论上、无论是国际API、还是navigator 均生效。
*/
"--luna_languages=en-GB",
/***
navigator.userAgentData:
值示例:Google Chrome:92-luna-Chromium:92-luna-Not-A.Brand:24-luna-platform:win32-luna-mobile:false-luna-platform_version:6.1-luna-ua_full_version:92.0.4515.186-luna-model:PC-luna-architecture:x86_64
格式、-luna- 为每组的分隔符
: 为key、value分隔符
举例说明:
1:Google Chrome:92-luna-Chromium:92 分别为2组 Google Chr

最低0.47元/天 解锁文章
4430

被折叠的 条评论
为什么被折叠?



