mirror of
https://forge.fsky.io/oneflux/omegafox.git
synced 2026-02-10 18:32:06 -08:00
README: Reformat & add more WebGL info
This commit is contained in:
parent
a6aeb19ca9
commit
809dc52207
1 changed files with 73 additions and 26 deletions
87
README.md
87
README.md
|
|
@ -17,14 +17,13 @@ Camoufox aims to be a minimalistic browser for robust fingerprint injection & an
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
- Invisible to **all major anti-bot systems** 🎭
|
- Invisible to **all major anti-bot systems** 🎭
|
||||||
- Fingerprint injection (without JS injection!) ✅
|
- Fingerprint injection & rotation (without JS injection!) ✅
|
||||||
- Override properties for device, viewport, screen, navigator, etc. ✅
|
- Spoof properties of device, viewport, screen, WebGL, battery API, location, etc. ✅
|
||||||
- Font spoofing & anti-fingerprinting ✅
|
- Font spoofing & anti-fingerprinting ✅
|
||||||
- WebRTC IP spoofing ✅
|
- WebRTC IP spoofing ✅
|
||||||
- Geolocation & timezone spoofing ✅
|
|
||||||
- Blocks & circumvents ads 🛡️
|
- Blocks & circumvents ads 🛡️
|
||||||
- Debloated & optimized for memory and speed 🚀
|
- Debloated & optimized for memory and speed ⚡
|
||||||
- [PyPi package](https://pypi.org/project/camoufox/) for updates & fingerprint rotation 📦
|
- [PyPi package](https://pypi.org/project/camoufox/) for updates & auto fingerprint injection 📦
|
||||||
- Stays up to date with the latest Firefox version 🕓
|
- Stays up to date with the latest Firefox version 🕓
|
||||||
|
|
||||||
## Sponsors
|
## Sponsors
|
||||||
|
|
@ -42,13 +41,14 @@ Using Capsolver in Camoufox
|
||||||
|
|
||||||
1. Download & extract the [Capsolver Firefox extension](https://github.com/capsolver/capsolver-browser-extension/releases/).
|
1. Download & extract the [Capsolver Firefox extension](https://github.com/capsolver/capsolver-browser-extension/releases/).
|
||||||
2. Edit `/assets/config.js` in the extracted files (e.g. add API key). See the [config settings](https://docs.capsolver.com/en/guide/extension/settings_for_developers/#configurable-settings).
|
2. Edit `/assets/config.js` in the extracted files (e.g. add API key). See the [config settings](https://docs.capsolver.com/en/guide/extension/settings_for_developers/#configurable-settings).
|
||||||
3. Load the addon in Camoufox with the `--addons` flag:
|
3. Load the addon in Camoufox:
|
||||||
|
|
||||||
```py
|
```py
|
||||||
browser = await pw.firefox.launch(
|
from camoufox.sync_api import Camoufox
|
||||||
executable_path='/path/to/camoufox/launch',
|
|
||||||
args=['--addons', json.dumps(['/path/to/CapSolver-Extension'])],
|
with Camoufox(addons=['/path/to/CapSolver-Extension']) as browser:
|
||||||
)
|
page = browser.new_page()
|
||||||
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
@ -67,6 +67,8 @@ Camoufox is built on top of Firefox/Juggler instead of Chromium because:
|
||||||
|
|
||||||
- Continue research on potential leaks
|
- Continue research on potential leaks
|
||||||
- Integrate into [hrequests](https://github.com/daijro/hrequests)
|
- Integrate into [hrequests](https://github.com/daijro/hrequests)
|
||||||
|
- Human-like typing & mouse movement
|
||||||
|
- WebGL fingerprint spoofing through software rendering
|
||||||
- Built in TLS fingerprinting protection using [Hazetunnel](https://github.com/daijro/hazetunnel)
|
- Built in TLS fingerprinting protection using [Hazetunnel](https://github.com/daijro/hazetunnel)
|
||||||
- Create integration tests
|
- Create integration tests
|
||||||
- Chromium port (long term)
|
- Chromium port (long term)
|
||||||
|
|
@ -298,11 +300,56 @@ Camoufox implements WebRTC IP spoofing at the protocol level by modifying ICE ca
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>
|
||||||
|
WebGL
|
||||||
|
</summary>
|
||||||
|
|
||||||
|
Camoufox has experimental support for spoofing WebGL properties.
|
||||||
|
|
||||||
|
| Property | Status | Description |
|
||||||
|
| -------------- | ------ | ----------------------------------------------- |
|
||||||
|
| webGl:renderer | ✅ | Spoofs the name of the unmasked WebGL renderer. |
|
||||||
|
| webGl:vendor | ✅ | Spoofs the name of the unmasked WebGL vendor. |
|
||||||
|
|
||||||
|
**Notes:**
|
||||||
|
|
||||||
|
- Spoofing your unmasked WebGL provider does NOT spoof your [WebGL fingerprint](https://scrapfly.io/web-scraping-tools/webgl-fingerprint). **This can cause detection!**
|
||||||
|
- WebGL is disabled in Camoufox by default. To enable it, set the `webgl.disabled` preference to `false`.
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>
|
<summary>
|
||||||
Addons
|
Addons
|
||||||
</summary>
|
</summary>
|
||||||
|
|
||||||
|
In the Camoufox Python library, addons can be loaded with the `addons` parameter:
|
||||||
|
|
||||||
|
```python
|
||||||
|
from camoufox.sync_api import Camoufox
|
||||||
|
|
||||||
|
with Camoufox(addons=['/path/to/addon', '/path/to/addon2']) as browser:
|
||||||
|
page = browser.new_page()
|
||||||
|
```
|
||||||
|
|
||||||
|
Camoufox will automatically download and use the latest uBlock Origin with custom privacy/adblock filters, and B.P.C. by default to help with ad circumvention.
|
||||||
|
|
||||||
|
You can also exclude default addons with the `exclude_addons` parameter:
|
||||||
|
|
||||||
|
```python
|
||||||
|
from camoufox.sync_api import Camoufox
|
||||||
|
from camoufox import DefaultAddons
|
||||||
|
|
||||||
|
with Camoufox(exclude_addons=[DefaultAddons.uBO, DefaultAddons.BPC]) as browser:
|
||||||
|
page = browser.new_page()
|
||||||
|
```
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>
|
||||||
|
Loading addons with the legacy launcher...
|
||||||
|
</summary>
|
||||||
|
|
||||||
Addons can be loaded with the `--addons` flag.
|
Addons can be loaded with the `--addons` flag.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
@ -321,27 +368,27 @@ You can also exclude default addons with the `--exclude-addons` flag:
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>
|
<summary>
|
||||||
Miscellaneous (WebGl spoofing, battery status, etc)
|
Miscellaneous (battery status, etc)
|
||||||
</summary>
|
</summary>
|
||||||
|
|
||||||
| Property | Status | Description |
|
| Property | Status | Description |
|
||||||
| ----------------------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
|
| ----------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| pdfViewer | ✅ | Sets navigator.pdfViewerEnabled. Please keep this on though, many websites will flag a lack of pdfViewer as a headless browser. |
|
| pdfViewer | ✅ | Sets navigator.pdfViewerEnabled. Please keep this on though, many websites will flag a lack of pdfViewer as a headless browser. |
|
||||||
| webGl:renderer | ✅ | Spoofs the name of the unmasked WebGL renderer. Can cause leaks, use at your own caution! Also note, webGl is disabled in Camoufox by default. |
|
|
||||||
| webGl:vendor | ✅ | Spoofs the name of the unmasked WebGL vendor. Can cause leaks, use at your own caution! Also note, webGl is disabled in Camoufox by default. |
|
|
||||||
| battery:charging | ✅ | Spoofs the battery charging status. |
|
| battery:charging | ✅ | Spoofs the battery charging status. |
|
||||||
| battery:chargingTime | ✅ | Spoofs the battery charging time. |
|
| battery:chargingTime | ✅ | Spoofs the battery charging time. |
|
||||||
| battery:dischargingTime | ✅ | Spoofs the battery discharging time. |
|
| battery:dischargingTime | ✅ | Spoofs the battery discharging time. |
|
||||||
| battery:level | ✅ | Spoofs the battery level. |
|
| battery:level | ✅ | Spoofs the battery level. |
|
||||||
|
|
||||||
**Notes:**
|
|
||||||
|
|
||||||
- For screen properties, using Page.setViewportSize() may be more effective.
|
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<hr width=50>
|
<hr width=50>
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue