Commit graph

57 commits

Author SHA1 Message Date
Karim shoair
6fc8ee287e Make Geolocation frozen to use less memory
And it can be cached later if that intended in the future
2025-01-24 21:21:27 +02:00
Karim shoair
b5a248707e Small performance boost on ip validation with caching 2025-01-24 21:19:29 +02:00
TimurKutsenko
a44986e1a0
Remove print on start of virtual display 2025-01-05 10:23:55 +02:00
vihangatheturtle
133afbcdea
Update launchServer.js 2024-12-17 17:58:18 +00:00
vihangatheturtle
f5def98300
Update server.py 2024-12-17 17:57:50 +00:00
daijro
e3d3dcd6e7 pythonlib: Look for assets in earlier releases #134 0.4.9 2024-12-13 01:01:20 -06:00
daijro
2422d622eb pythonlib: Auto offset Canvas anti-aliasing 2024-12-09 08:27:05 -06:00
Ivan Suslov
685f2ff744 Fixes WebGL support for virtual display 2024-12-08 10:36:14 -05:00
daijro
4c52518dd2 pythonlib: Cleanup & bump to 0.4.6
- `camoufox test` will no longer highlight the cursor by default
- Fixed launch_options blocking async
- WebGL database cleanup & added ability to query all possible vendor/renderer pairs
2024-12-04 19:35:54 -06:00
daijro
31963aa83b pythonlib: Update WebGL sample database 2024-12-04 00:38:12 -06:00
daijro
f6ef52a39b pythonlib: Support for main world evaluation 0.4.5 2024-12-03 22:58:08 -06:00
daijro
3210351527 pythonlib: Add parameter to only use user-specified fonts #109
Added a `custom_fonts_only` parameter to ignore the fonts in fonts.json.
2024-11-28 22:15:36 -06:00
daijro
30a92edb1b pythonlib: Do not override productSub #105 2024-11-28 21:36:49 -06:00
daijro
cf3f8e6bde pythonlib: Fix WebGL injection causing crashing 0.4.4-beta 2024-11-25 00:20:27 -06:00
daijro
145b737069 pythonlib: [Rollback] Disable WebGL by default #90 0.4.3
Disables WebGL by default until a fix is available.
2024-11-22 11:13:43 -06:00
daijro
01aff40fc5 pythonlib: Rollback WebGL fingerprint injection 0.4.2
Rolling back WebGL injection temporarily until the crashing issue on certain devices is fixed.
2024-11-22 03:28:01 -06:00
daijro
673fdc7271 pythonlib: Hotfix imports 0.4.1 2024-11-21 21:11:08 -06:00
daijro
af937cce55 pythonlib: WebGL rotation & leak fixes 0.4.0 2024-11-21 21:03:25 -06:00
Nongzhsh
74e0d08afc pythonlib: Proxy credentials are now optional 2024-11-18 10:57:22 +08:00
daijro
3a33283cd2 pythonlib: Add enable_cache, fixed font spacing, etc 0.3.9
- Enable bf cache with `enable_cache=True` #74
- Font spacing is now fixed per session #63
- Re-download (or raise error) when target install path is empty. Caused when the user cancels the download.
- Bumped minimum version to beta.15
2024-11-11 22:11:43 -06:00
daijro
964f49028c pythonlib: Fix broken import #70 0.3.8 2024-11-04 13:18:10 -06:00
daijro
ca7c3e3aa8 No progress bar on addon download #65
- Removed progress bars on addon download (shows as percent instead)
- Default addons are downloaded on `camoufox fetch`
2024-11-03 04:01:17 -06:00
Karim shoair
18b1d222e6
Make browserforge update both headers and fingerprints 2024-11-03 11:27:37 +02:00
daijro
956a384ef7 Disable BPC by default
BPC is not always necessary, and increases the memory footprint of Camoufox.
2024-11-03 01:42:35 -05:00
Karim shoair
e0dd73b6bb
Adding the option to update browserforge database with camoufox fetch 2024-11-02 19:49:42 +02:00
daijro
33189cd5b4 pythonlib: Fully fix #61 0.3.6 2024-10-31 06:42:47 -05:00
Karim shoair
473d04ce13
Complete fix for #61
https://github.com/daijro/camoufox/issues/61
2024-10-31 14:13:13 +03:00
daijro
692e8a162c pythonlib: Support Python 3.8 #61 0.3.5 2024-10-31 05:09:17 -05:00
daijro
347885e9cb pythonlib: Default to http schema #57 0.3.4
Assume the proxy is using http schema when no other schema is specified.
2024-10-29 17:58:43 -05:00
daijro
f94452fa93 pythonlib: Error handling for invalid addon paths & proxies 0.3.3
Help prevent confusion with using Camoufox addons #55
2024-10-28 17:40:42 -05:00
daijro
732d7bac8d Hotfix #51 0.3.2
Fixes missing VirtualDisplay import on non-Linux systems.
2024-10-27 20:26:00 -05:00
daijro
75ea7b0880 pythonlib: Set window size & kill Xvfb on browser close #49 #50
- Added window: Tuple[int, int] argument to set a fixed width and height #50
- Experimental fix to automatically terminate Xvfb on browser.close() #49
- Bump to 0.3.1
2024-10-27 20:03:11 -05:00
daijro
0ff90fc750 Version range control, multi locale usage, etc
- Python library now constrains the supported Camoufox version, and will force an update if you are out of date.
- Added support patch for multiple accepted languages #37
- Added pysocks #43
- Added README deprecation notices
- Added public launch_options command
- Bumped python library to 0.3.0
- Full support for beta.12
2024-10-19 23:10:51 -05:00
daijro
216718845c pythonlib: Add dict expected type 0.2.15
Adds support for beta.12.
2024-10-15 06:57:48 -05:00
daijro
c448ec81ab More warnings & reformat README to avoid confusion/misuse 0.2.14
- Warns the user if they try to manually set the geolocation and locale.
- Move manual config documentation to the bottom of the README to discourage use.
- Make the parameters list more obvious.
2024-10-11 22:09:42 -05:00
daijro
deddba00c3 Allow passing in a region or language into locale 0.2.13
- Passing in a region like `locale='US'` will generate a language based on the region, "US".
- Passing in a language like `locale='en'` will generate a region based on the language, "en".
- Fix locale parsing errors when generating using territoryInfo.xml #36
2024-10-11 21:36:19 -05:00
daijro
3e2551e65b pythonlib: Fix geolocation domain detection #31 0.2.12 2024-10-10 15:44:25 -05:00
daijro
76bedb5251 pythonlib: Hotfix screen property out of bounds 0.2.11
Adds back handling for when Browserforge screen properties are out of bounds.
2024-10-09 06:30:41 -05:00
daijro
b2f74a24f3 Update pythonlib & README for beta.11
- Removed warnings for using headless mode
- Xvfb is now activated with headless='virtual'
- Correctly pass window.screenX & calculate window.screenY
- Update documentation on main README and pythonlib README
- Bumped pythonlib to 0.2.10
2024-10-09 05:49:22 -05:00
daijro
bd59304481 pythonlib: Add Xvfb integration #26 0.2.9
- Automatically uses virtual displays on Linux
- Update documentation on README
2024-10-08 05:10:12 -05:00
daijro
351e99ed18 pythonlib: Add more leak warnings 0.2.8
Warns the user for when the passed parameters are likely to cause a leak.
2024-10-06 23:32:50 -05:00
daijro
4a1cd7ec64 pythonlib: Add headless detection warning #26 0.2.7
Raises a warning when headless mode is enabled in Camoufox.
This will be reverted once #26 is resolved.
2024-10-06 20:05:11 -05:00
daijro
f3b68ab355 pythonlib: Assert OS is valid 0.2.6
- Removed mobile OS support due to detection issues
- Validate the passed os name & that its lowercase
2024-10-05 02:10:43 -05:00
daijro
2832673f83 pythonlib: Add persistent_context, humanize, etc. 0.2.5
- Added `persistent_context` parameter #21
- Added `humanize` parameter #22
- Added validation for custom fingerprints
- Updated Browserforge integration documentation
2024-10-04 19:04:16 -05:00
daijro
79c436e506 pythonlib: Add remote server launching #7
Uses a hacky work around to run Javascript in Playwright's internal library to gain access to the launchServer method.
2024-10-02 02:45:26 -05:00
daijro
7985eec493 pythonlib: Allow fetch without geoip 0.2.3
Fix fetch not checking if geoip2 is installed before trying to download the mmdb.
2024-10-02 00:09:42 -05:00
daijro
ad55622550 pythonlib: Implement viewport hijacking 0.2.2
- Allow Browerforge fingerprints to override screen & viewport data.
- Set Camoufox's window dimensions to a fixed width/height generated from Browserforge.
- If the browser is headful, do not exceed 125% of the screen size.

Other changes:
- Allow public IP finder to work without verification.
- Add script to publish to pypi.
- More descriptive progress bars when downloading default addons.
- Bump to 0.2.2
2024-09-30 04:06:16 -05:00
daijro
7d825e53d9 pythonlib: Typing & environ var fixes 0.2.1
- Fixes typing with OS_NAME
- Fix exceeding environment variable length on Windows (caused by typing issue)
- Fix not passing fontconfig on Linux (caused by typing issue)
2024-09-29 17:30:11 -05:00
daijro
f6396c1e81 pythonlib: Add locale, geolocation/locale from IP, & more 0.2.0
- Added `geoip` parameter to automatically find the target IP's longitude, latitude, timezone, country, language/region locale, & spoof the WebRTC IP address. #5
- Added parameter to set the locale #16
- Automatically calculate the locale based on the distribution of speakers in the target geoip region.
- Added allow_webgl option #17
- By default, use the current version of Camoufox instead of Browserforge's Firefox versions #14.
2024-09-29 17:30:00 -05:00
daijro
f18b9a00be pythonlib: Add block_images, block_webrtc, fixes, etc. 0.1.3
- Adds block_images & block_webrtc parameters to Camoufox and AsyncCamoufox
- Fixes async_api
- Update README
2024-09-19 19:05:53 -05:00