Karim shoair
61cda587be
docs: update pages with the XHR feature
2026-03-29 23:12:56 +02:00
Karim shoair
68f7c5c36f
feat(browser sessions): Collect XHR requests done while loading the page
...
Solves #159
2026-03-29 22:53:54 +02:00
Karim shoair
05f62fba81
fix(response): Force the body of the response to always be bytes
2026-02-06 03:14:23 +02:00
Karim shoair
f88502718f
feat(proxy control): Force a proxy at request level at any given point
...
And merge request's meta with response's meta
2026-02-02 14:26:52 +02:00
Karim shoair
dd5c30c521
feat(response): Option to set the referer as the previous response url.
2026-01-11 03:24:30 +02:00
Karim shoair
0634f5796c
feat(spiders): Add follow function to the response
2026-01-10 20:39:43 +02:00
Karim shoair
c8b9a04e87
docs: making some adjustments
2025-11-14 02:22:59 +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
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
Karim shoair
debe03256b
refactor: Making all the codebase acceptable by PyRight
...
Also fixes #97
2025-10-05 04:03:39 +03:00
Karim shoair
f848e6b7f2
fix: Fixes to handle the new extra deps group
2025-09-15 00:19:19 +03:00
Karim shoair
67ca139ff9
fix: Fixes for multiple encoding issues ( #80 & #81 )
2025-09-14 20:20:29 +03:00
Karim shoair
13d7e70cb7
refactor: Make all fetchers as an optional dependency group
...
+ Removing some dead code
2025-09-13 16:07:48 +03:00
Karim shoair
330d03559c
style: applying the new ruff rules to all files
2025-09-13 03:22:53 +03:00
Karim shoair
5bb1266fa5
style: using isinstance function as the main way for type checking
2025-07-30 03:14:23 +03:00
Karim shoair
ae9ccaec79
style: A lot of type hints correction
...
Since we are using Py3.10 as minimum version now, we remove Union when possible
2025-07-30 02:46:57 +03:00
Karim shoair
8ca940d768
style: removing dead code
2025-07-29 23:43:31 +03:00
Karim shoair
b9c7a5af2e
refactor: replace's Selector inpt (text/body) with 1 argument called content
2025-07-29 06:08:15 +03:00
Karim shoair
264ae02aa7
refactor: huge change, many features/class got a better naming
...
- `Adaptor` became `Selector`
- `Adaptors` became `Selectors`
- `auto_match` argument/feature became `adaptive`
- `adaptor_arguments` argument became `selector_config`
- `automatch_domain` argument became `adaptive_domain`
- `additional_arguments` argument became `additional_args`
- `storage_adaptors` file became just `storage`
2025-07-29 04:20:23 +03:00
Karim shoair
3754547e58
refactor: removing unused code
2025-06-23 03:20:49 +03:00
Karim shoair
c84143129e
fix(fetchers): Adjusting all cookies returned from each fetcher
...
The cookies returned now can be passed again to each fetcher's engine without further validation by us.
2025-05-10 19:16:34 +03:00
Karim shoair
0c8dd63f87
chore: migrating to ruff and updating pre-commit hooks
2025-04-13 17:32:00 +02:00
Karim shoair
811cd2d9b0
refactor: make auto_match disabled by default
2025-03-26 19:25:19 +02:00
Karim shoair
fec8215631
docs: Clearer docs for recent changes
2025-03-26 05:56:49 +02:00
Karim shoair
7c0c23fd33
feat(unified import): Make one import for all fetchers
...
Why I didn't think of that from the start? IDK
2025-03-26 02:48:34 +02:00
Karim shoair
ff3962b1ad
fix: Adjusting cache size in all the library
2025-03-17 06:46:41 +02:00
Karim shoair
7bef44ea4c
fix: Limit caching in all the library
...
To lower memory usage with high numbers of requests. Possibly improve case #48
2025-03-15 02:01:16 +02:00
Karim shoair
3d2418b67a
feat(Fetcher): Add the redirections history to Fetcher
...
Feature requested in #32
2025-02-22 16:58:54 +02:00
Karim shoair
6652b8ac18
fix: solve the response log issue so now you get log for every response from Fetchers
2024-12-19 12:29:34 +02:00
Karim shoair
c282cb3cb7
fix: Stopped the log spamming that happens with multiple instances creation
2024-12-16 13:35:48 +02:00
Karim shoair
af4f2c0f74
feat(PlaywrightFetcher): Add async support for PlaywrightFetcher
2024-12-16 00:15:47 +02:00
Karim shoair
889c111855
refactor(Playwright Engine): Separate what we can for cleaner code and the async function later
...
The caching will give a slight performance increase with bulk requests
2024-12-15 23:25:02 +02:00
Karim shoair
193827e27b
refactor(api)!: Unifying log under 1 logger and removing debug parameter
...
So now you control the logging and the debugging from the shell through the logger with the name 'scrapling'
2024-12-11 21:41:37 +02:00
Karim shoair
9f0001af26
feat: logging for response status
2024-12-11 20:14:32 +02:00
Karim shoair
b4f90615c3
Adding keep_cdata argument for Adaptor and Response classes
...
This will force lxml to keep cdata while parsing html if you want
2024-12-10 22:06:08 +02:00
Karim shoair
1a17b2ce46
Sorting all library imports with isort
2024-11-30 14:02:06 +02:00
Karim shoair
06a47f9644
Small fix for the ResponseEncoding class
2024-11-26 22:55:22 +02:00
Karim shoair
14ffdbd6fc
Handling problematic encodings
2024-11-26 22:27:05 +02:00
Karim shoair
1929d9bebb
Fix for docs
2024-11-23 17:48:05 +02:00
Karim shoair
073ab2c7e3
Universally handling different response encoding and charsets for all responses
...
Thanks for @andyfcx
2024-11-23 15:40:41 +02:00
Karim shoair
19ad82caef
Calculate status text manually if it's not returned by PlayWright API
2024-11-20 13:27:18 +02:00
Karim shoair
b60ac7f56a
Change debug mode to be off by default
2024-11-16 21:11:58 +02:00
Karim shoair
572df6b3b4
Fixing the way Response object handles sub items in some edge cases
...
+ Do it with the least impact on performance
2024-11-16 13:54:55 +02:00
Karim shoair
095d50cd75
Making the Response returned from all fetchers same as Adaptor object
...
but with added attributes
2024-11-15 02:23:14 +02:00
Karim shoair
239e2c73bf
Correctly get page content after JS Execution
...
- Thanks for @AbdullahY36 for the heads-up.
**Update reference** https://developer.mozilla.org/en-US/docs/Web/API/Document/DOMContentLoaded_event
2024-11-10 16:11:46 +02:00
Karim shoair
b90c8adb02
Adding the argument automatch_domain to all fetchers
2024-11-09 15:38:27 +02:00
Karim shoair
e270b00811
Toolbelt subpackage custom functions general adjustments
2024-11-03 23:17:20 +02:00
Karim shoair
be350f21dd
Adding documentation to the base fetcher...
...
+ Configure logger from here.
+ Enable auto_match by default.
2024-11-03 13:45:13 +02:00
Karim shoair
1ff1c93bcf
Give response's body bytes priority over response's text
2024-11-03 13:04:02 +02:00