Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
impersonate-rs
A high-performance Rust wrapper for curl-impersonate. This crate provides a safe, ergonomic, and idiomatic Rust interface for performing HTTP requests that mimic specific browser TLS fingerprints (Chrome, Firefox, Safari, Edge) to bypass sophisticated anti-bot protections.
🚀 Features
- Browser Impersonation: Built-in support for mimicking modern browsers (Chrome, Edge, Safari, Firefox).
- Custom Fingerprinting: Low-level control over JA3 (TLS) and Akamai (HTTP/2) fingerprints.
- High Level API: Ergonomic
ClientandRequestBuildersimilar toreqwest. - Strongly Typed:
Browserenum ensures valid profile selection. - Header Consistency: Automatically manages headers to match the impersonated browser.
📦 Installation
Add this to your Cargo.toml:
[]
= "0.1.0"
System Requirements
This crate links against libcurl-impersonate. You must have the shared library installed on your system.
Linux (Debian/Ubuntu):
# Example for installing curl-impersonate-chrome
# Follow build instructions from https://github.com/lexiforest/curl-impersonate
Development Mode:
If you don't have the library installed yet, you can build with the mock feature to stub the FFI calls:
[]
= { = "0.1.0", = ["mock"] }
⚡ Usage
Basic Browser Impersonation
use ;
Custom JA3/Akamai Fingerprints
For advanced users who need to rotate fingerprints dynamically or use custom signatures.
use ;
🛠️ CLI Tool
This crate includes a CLI tool for quick testing and verification.
# Clone the repo
# Run against a target
🤝 Contributing
Contributions are welcome! Please check out the CONTRIBUTING.md guide.
- Fork it
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -am 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Create a new Pull Request
📄 License
This project is licensed under the MIT License.
⚠️ Disclaimer
This library is intended for testing, security research, and interoperability purposes. Users are responsible for ensuring their use of this software complies with all applicable laws and terms of service of the websites they access.