Karim shoair
c8a2456b81
fix(StealthyFetcher): disable incognito mode to solve #123
2026-01-03 01:50:02 +02:00
Karim shoair
30a77de2be
build: pump version up and browserforge version
2026-01-03 01:48:34 +02:00
Karim shoair
4947152be2
docs: change docstring style for some methods
2026-01-01 21:06:35 +02:00
Karim shoair
3b9a6d021e
fix: correct cli argument
2025-12-31 03:00:06 +02:00
Karim shoair
f6f0ed4b37
fix(async stealth): wait the coroutine of the bounding box
2025-12-31 00:19:53 +02:00
Karim shoair
0c7e26ae5c
fix(fingerprints): do not create google referer for IPs
2025-12-30 21:58:09 +02:00
Karim shoair
ee13af9516
build: update deps
...
and docstrings
2025-12-29 16:08:51 +02:00
Karim shoair
5e3845f060
docs: shorten docstrings for some functions
2025-12-28 21:56:28 +02:00
Karim shoair
9bfe744840
fix: remove forgotten unused code
2025-12-28 00:14:47 +02:00
Karim shoair
1b838eabd0
fix: update the cookies type hint for the mcp server
2025-12-28 00:08:44 +02:00
Karim shoair
09bbd416b8
fix: remove old proxy logic
...
When I was caching it with the rest of the data
2025-12-28 00:02:50 +02:00
Karim shoair
fb3a1b4c17
style: removing unused code
2025-12-27 20:50:08 +02:00
Karim shoair
842718ba94
fix: update shell signatures for the autocompletion
...
Added missing fields and reordered classes as well for easier comparisons
2025-12-27 14:30:48 +02:00
Karim shoair
cfc667f7dc
refactor(fetchers)!: Replace Camoufox with patchright and many optimizations
...
- DynamicFetcher became 20% faster
- StealthyFetcher became 99% faster
- Scrapling size decreased
- Code became ~400 lines shorter
- Most importantly, scrapling is more stable and reliable now.
- Less confusing for new users.
- More...
2025-12-26 03:21:13 +02:00
Karim shoair
f9f34e6ee9
fix: improve the handling of useragent in chrome fetcher
2025-12-24 23:08:30 +02:00
Karim shoair
b40c16a2cd
build: pump version up
2025-12-24 21:35:41 +02:00
Karim shoair
85b327a598
fix: Improve stealth of dynamic browser by pinning Chrome's UA version
2025-12-24 21:34:44 +02:00
Karim shoair
ecb97d3fd6
docs: add docs for timezone_id argument
2025-12-18 01:16:22 +02:00
Karim shoair
39f544eae4
feat(dynamicSession): add the option to set timezone of the browser
2025-12-18 01:13:31 +02:00
Karim shoair
b507e4d4a0
refactor(fetchers): rename internal api
...
To make it easier to use to use sessions outside `with` context
2025-12-17 01:27:40 +02:00
Karim shoair
ae719a9d54
fix(parser): Improve response to json conversion
2025-12-17 00:15:55 +02:00
Karim shoair
fd9fc83c6c
build: pump version up and deps
2025-12-17 00:04:24 +02:00
Karim shoair
aed34e43b5
fix(fetchers): better handling for infinite network_idle
2025-12-03 03:11:30 +02:00
Karim shoair
16ff07a287
build: Pump version up and mcp
2025-12-03 02:20:18 +02:00
Karim shoair
ac2d4d3833
fix: use the correct signature for the stealthy_fetch shortcut
2025-12-02 02:15:42 +02:00
Karim shoair
0e1f3b9b05
fix(fetchers): Add backward compatibility for custom_config argument
2025-11-26 02:23:17 +02:00
Karim shoair
9b3309f825
fix(shell): use correct argument name in signatures
2025-11-26 02:22:29 +02:00
Karim shoair
880b144af0
refactor(browser fetchers): Make all the type hints dynamic + Faster validation
...
+ Also renamed `custom_config` to `selector_config` so it matches the session class.
2025-11-25 22:03:45 +02:00
Karim shoair
8940bdeb55
fix(shell): dynamically build the signature of shortcuts after last changes
2025-11-25 21:23:06 +02:00
Karim shoair
04a612e64e
docs: fix docstrings for all requests methods
2025-11-25 21:05:21 +02:00
Karim shoair
5376c97996
fix(fetcher): Remove non-keywords arguments
2025-11-25 20:25:09 +02:00
Karim shoair
f0b01fc253
refactor(browser fetchers): Make all the type hints dynamic + Faster validation
...
Made the code shorter by an additional ~200 lines and easier to maintain in return for making the arguments autocompletion bad for shells that don't check for dynamic type hints like IPython.
2025-11-25 20:18:36 +02:00
Karim shoair
9e85311ff6
fix(validators): Fix overriding session values with request ones
2025-11-25 19:48:09 +02:00
Karim shoair
74f24d60f6
fix(fetcher): Replace vars logic with one that doesn't require dict attribute
2025-11-24 13:04:12 +02:00
Karim shoair
c487faf4fd
pref(requests): Optimizing memory by specifiying slots
2025-11-23 21:50:54 +02:00
Karim shoair
357b170e1c
refactor(requests): Make all the type hints dynamic
...
Made the code shorter by about ~500 lines and easier to maintain in return for making the arguments autocompletion bad for shells that don't check for dynamic type hints like IPython.
2025-11-23 20:48:51 +02:00
Karim shoair
2bae3261a0
build: Pumping version and deps up
...
This also updates the Maxmind database for camoufox
2025-11-22 21:41:47 +02:00
Karim shoair
170205599d
fix(parser): Better approach for web pages where the encoding is not always correctly declared
...
Fixes #110 and avoids defaulting to a specific encoding like #111
2025-11-22 20:24:55 +02:00
Karim shoair
fb80beba04
feat(TextHandler): Add argument to clean method to remove html entities
2025-11-17 01:36:06 +02:00
Karim shoair
3565f9d500
feat(fetcher): Make impersonate able to randomize fingerprint
2025-11-16 16:33:58 +02:00
Karim shoair
c8b9a04e87
docs: making some adjustments
2025-11-14 02:22:59 +02:00
Karim shoair
d018d6e438
fix: fixing the response logic
2025-11-10 03:03:05 +02:00
Karim shoair
ff19dd5bf5
feat: replace raw_response property with smart content detection
2025-11-10 02:39:45 +02:00
Karim shoair
df073c4680
fix: added raw_response to separate collected response from rendered response
2025-11-08 20:09:40 +02:00
Karim shoair
e20882af5d
style: removing dead code from the parser
2025-11-08 20:08:23 +02:00
Karim shoair
42a8b43207
build: Pump version up
2025-11-08 20:07:26 +02:00
Karim shoair
fc4a809985
fix(cloudflare): Limit the waiting period for websites that captcha doesn't disappear after solving
...
Also solves #100
2025-10-27 05:13:12 +03:00
Karim shoair
d4a2507666
refactor(validation): All browser based fetchers are ~8-15% faster now in most cases
2025-10-27 04:48:45 +03:00
Karim shoair
13b9a4668c
feat(DynamicSession): New option to add extra browser flags
2025-10-26 16:53:27 +03:00
Karim shoair
59ec6be201
refactor(fetchers): Less duplicated code and better handling for unstable websites
...
- Websites that never finish loading their requests won't crash the code now if you used `network_idle` with them
- Fixed a typo in `load_dom` in DynamicSession's async_fetch
- Removed dead code
2025-10-26 05:04:19 +03:00