-
-
Notifications
You must be signed in to change notification settings - Fork 302
fingerprint camouflage #129
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
这些代码风格问题(空行空格、文件末尾换行等)不影响功能实现。考虑到当前 PR 的主要目的是添加指纹伪装功能,建议先审查功能有效性,这些微小的格式问题可以在后续优化。
只是测试分支没有测试到,但是不影响使用
Hi @3-Tokisaki-Kurumi , thank you so much for you contribution!
To maintain consistency with the rest of the code, we only need to translate what's necessary into English
你好@3-Tokisaki-Kurumi,非常感谢您的贡献!
为了与其余代码保持一致,我们只需要将必要的内容翻译成英语
Thank you for your attention. I will translate the necessary content into English
你好@3-Tokisaki-Kurumi,非常感谢您的贡献!
为了与其余代码保持一致,我们只需要将必要的内容翻译成英语
现在我已经将必要的内容和注释翻译成英语,您可以审阅一下,之后我会继续贡献更优化的代码
Now I have translated the necessary content and comments into English, you can review them, and I will continue to contribute more optimized code afterwards
Sorry for the delay. I'm currently finalizing version 2 of Pydoll, which will introduce breaking changes. Once it's done, we can move forward with your contribution, as a few more adjustments will be needed. I appreciate your understanding
抱歉耽搁了。我目前正在最终完成 Pydoll 的 2.0 版本,这将引入一些重大更改。完成后,我们就可以继续处理您的贡献,因为还需要进行一些调整。感谢您的理解。
OK,期待你的Pydoll v2,感谢您带来了一个强大的自动化工具,等待你的更改之后我们可以继续处理此贡献
OK, Looking forward to your Pydoll v2. Thank you for bringing us a powerful automation tool. We are waiting for your changes before we can proceed with this contribution
3caf6a8
to
c518a7e
Compare
占位,准备继续完成该贡献
Position occupied, ready to continue completing the contribution
抱歉耽搁了。我目前正在最终完成 Pydoll 的 2.0 版本,这将引入一些重大更改。完成后,我们就可以继续处理您的贡献,因为还需要进行一些调整。感谢您的理解。
现在是最新的指纹伪装功能,你可以查看一下代码,如果需要,之后我会继续贡献
Now it's the latest fingerprint camouflage feature. You can review the code and if needed, I will continue to contribute in the future
Hello! Once again, thank you very much for your efforts, I truly appreciate your contribution. However, I just noticed one thing: you didn't follow the Commitizen convention, which is required for release generation.
Before I can review your PR, could you please update your commit history to follow the guidelines described in this link?
You can do that by running the following commands:
git rebase -i HEAD~<number_of_commits_to_edit> # Replace 'pick' with 'reword' for each commit # Then rewrite each commit message using the Commitizen format
After that, force-push your changes. Also, everything must be in english. Thank you!
293e15f
to
f9f23cc
Compare
80025f8
to
93ef99b
Compare
@thalissonvs
Hello, thank you for your correction. I have updated my submission history to follow this [link]( https://github.com/autoscrape-labs/pydoll/blob/main/CONTRIBUTING.md )The guidelines described in the document have been forcibly pushed, and now you can review my PR. Thank you for your review
您好,感谢您的纠正,我已经更新了我的的提交历史记录以遵循此链接中描述的指南并且进行了强制推送,接下来您可以审查我的PR,感谢您的审查
Hi @3-Tokisaki-Kurumi, I left some RC's that need to be resolved.
Also, it seems that your PR doesn’t reflect the new file structure introduced in the second version. If you need any help, I can implement some of the changes for you.
您好,感谢您的指正,我会根据您的建议修改,如果您能提供一些帮助,我将感激不尽,麻烦您了
Hello, thank you for your correction. If you could provide some help, I would be extremely grateful. Thank you very much
There may have been some ambiguity in the translation of the conversation, so I have roughly revised it once. If possible, please help me. Thank you very much @thalissonvs @thalissonvs
Hi @3-Tokisaki-Kurumi, can you give me your email? I'd like to talk to you about this feature and some ideas I have.
Hi @3-Tokisaki-Kurumi, can you give me your email? I'd like to talk to you about this feature and some ideas I have.
hello,yes,This is my frequently used email address: zaphkiel_nightmare@qq.com ,Coincidentally, I am currently developing and compiling a fingerprint browser based on the Chromium kernel,We can talk about this feature and ask for your advice on pydoll related content
你好@3-Tokisaki-Kurumi你能给我你的邮箱吗?我想跟你聊聊这个功能以及我的一些想法。
Hello, have you sent me a message? I haven't received any information @thalissonvs
1b068a0
to
187acae
Compare
3dd2fba
to
25c3d41
Compare
niv-iceweb
commented
Aug 27, 2025
This is amazing!, when will this be merged @3-Tokisaki-Kurumi
This is amazing!, when will this be merged @3-Tokisaki-Kurumi
I am currently researching fingerprint browsers, and my current idea is to use automation frameworks such as Pydoll to operate my own fingerprint browser in the future. This will be more comprehensive than directly forging fingerprints, because methods such as JS injection can only achieve limited results. If you want to, you can also take a look at my repository's previous Pydoll enhancement, but it is a previous version and I have no time to worry about it recently
Hey @3-Tokisaki-Kurumi , do you need any help with the conflicts?
嘿@3-Tokisaki-Kurumi,您需要任何帮助来解决冲突吗?
Yes, I need your help
首先你的指纹欺骗一些简单的网站还行,稍微上点难度指纹欺骗反而会影响正常的网站访问。
粗略看到的一些问题
- 没有处理web_woker的指纹,会被识别为篡改
- js端的指纹,跟http请求的指纹不通,会被识别为篡改
- 简单ua随机没有对应的brand修改,会被识别为篡改
作为一个操作浏览器的库,添加指纹欺骗并不是好主意。在我看来这个库最大的价值就是原生,没有入侵web内容。playwright,selenium等都侵入了web内容,比如给window对象增加各种属性,从而被检测到自动化。如果非要做,至少应该能欺骗常见的指纹检测网站,下边提供一些网站供你参考。
https://pixelscan.net
https://iphey.com
https://browserscan.net/zh
https://demo.fingerprint.com/playground
https://abrahamjuliot.github.io/creepjs/
Uh oh!
There was an error while loading. Please reload this page.
🔐 Browser Fingerprint Spoofing Feature / 浏览器指纹伪造功能
📋 Summary
This PR introduces a comprehensive browser fingerprint spoofing system that prevents browser fingerprint tracking by generating random but realistic browser fingerprints and injecting them into the browser runtime. The implementation has been updated to use the new centralized options configuration pattern.
🎯 Key Features
Core Components
Browser Support
Fingerprint Properties
Advanced Features
🚀 Usage Examples
Basic Usage (New API)
Advanced Configuration
Persistent Fingerprints
Edge Browser Support
🛡️ Security Benefits
🔧 Recent Technical Updates
API Migration
ChromiumOptions
configurationBug Fixes Applied
constants.py
tab.py
https://fingerprintjs.github.io/fingerprintjs/
Enhanced Testing
🧪 Testing & Quality Assurance
📁 File Structure
🔧 Technical Implementation Details
ChromiumOptions.enable_fingerprint_spoofing_mode()
APIChromiumOptionsManager
🎯 Migration Guide
From Old API to New API:
📋 概述
此PR引入了一个全面的浏览器指纹伪造系统,通过生成随机但真实的浏览器指纹并将其注入到浏览器运行时来防止浏览器指纹跟踪。实现已更新为使用新的集中式选项配置模式。
🎯 核心功能
核心组件
🚀 使用示例
基础用法(新API)
高级配置
🔧 最新技术更新
API迁移
ChromiumOptions
配置应用的错误修复
constants.py
中的字符串格式错误tab.py
中过于宽泛的参数检查https://fingerprintjs.github.io/fingerprintjs/
🎯 迁移指南
从旧API到新API:
🏷️ Labels
feature
- New featuresecurity
- Security enhancementprivacy
- Privacy protectionbrowser
- Browser automationfingerprint
- Fingerprint spoofingapi-migration
- API modernization📊 Metrics
🎉 Summary
This feature adds comprehensive browser fingerprint protection capabilities to pydoll, enabling users to easily prevent fingerprint tracking while maintaining natural and consistent browser behavior. The updated API provides better modularity and easier integration, supporting both simple one-click enabling and complex custom configurations to meet different user needs.