Commit Graph

1580 Commits

Author SHA1 Message Date
Karim shoair 2b9d0e2933 style: image size adjustment 2026-08-11 01:07:32 +03:00
Karim shoair 2c371e0f2e docs: add stars history manually because of Github API changes
Ref.: https://www.star-history.com/blog/github-stargazer-api-restriction
2026-08-11 01:03:00 +03:00
Karim shoair 3f32fa9050 docs: re-adding a sponsor
Revert: https://github.com/D4Vinci/Scrapling/commit/253d316a89c4207b6959d08484fcbd4243bb879f#diff-d0a2065f1a22f388fa5e96f04ebba0efa783c45613b500d78b3b2f1a2341d9cb
2026-08-11 00:37:19 +03:00
Karim shoair 9af7e2796a docs: adding a new sponsor 2026-08-11 00:30:14 +03:00
Karim shoair 64bc7007b0 v0.4.13 (#406) v0.4.13 2026-08-09 22:06:36 +03:00
Karim shoair 10c6c8951e perf(mcp): Add more specific instruction to the server-level instructions 2026-08-09 22:05:58 +03:00
Karim shoair b2106e6054 docs: add an AI policy for contributions 2026-08-09 21:20:49 +03:00
Karim shoair b498fe7ee0 docs: update benchmarks results with the latest numbers 2026-08-09 21:14:53 +03:00
Karim shoair fad6893d66 docs: add the new templates to the docs 2026-08-09 20:56:29 +03:00
Karim shoair 6e41f335f9 fix(xml template): Be specific about the node type hint 2026-08-09 20:49:28 +03:00
Karim shoair 9bbd7c8b25 feat(spiders): Add XML/CSV feed templates + docs 2026-08-09 20:44:12 +03:00
Yiğit ERDOĞAN f8893d9b58 fix(ai): size the MCP bulk page pools within the validator bounds (#393) 2026-08-09 20:18:53 +03:00
Karim shoair 0f2397c769 feat(mcp): add a scrapling-mcp console shortcut for easier MCP registration 2026-08-09 19:19:52 +03:00
Karim shoair 902b617a15 fix(mcp): point the server card website_url at the MCP docs page 2026-08-09 19:06:08 +03:00
Karim shoair 0e16c4d471 feat(mcp): add tool annotations, server card metadata, and a tools/list cache hint 2026-08-09 19:01:39 +03:00
Karim shoair e90367b7ab feat(mcp): Make tools description shorter and add server-level instructions 2026-08-09 18:36:20 +03:00
Karim shoair 346fe9c25c build: pump version and deps 2026-08-09 16:45:55 +03:00
Karim shoair e978f8616d fix:(mcp): upgrade mcp server to v2
Fixes #392
2026-08-09 16:29:16 +03:00
Karim shoair 2fb5e429f2 fix(browser version): extract current chrome version from playwright package data
Fixes #394 #396 #400
2026-08-09 00:41:05 +03:00
Karim shoair 39847bd2da docs: removing a sponsor 2026-08-06 16:00:32 +03:00
Karim shoair bc0cf7dede docs: typo fix 2026-07-30 17:31:34 +03:00
Karim shoair efc0de2936 docs: adding new sponsor 2026-07-30 17:30:17 +03:00
Karim shoair 80d78cc362 docs: typo fix 2026-07-27 14:01:05 +03:00
Karim shoair 87e010a2e8 docs: fix 2026-07-27 12:38:38 +03:00
Karim shoair ebb0dbfdc3 ci: fixes 2026-07-27 12:34:46 +03:00
Karim shoair fc96fcc386 v0.4.12 (#388) v0.4.12 2026-07-26 23:23:21 +03:00
Karim shoair 1166ce3368 ci: lock workflows to be triggered by the repo owner alone 2026-07-26 23:19:51 +03:00
Karim shoair 0a7fec8f86 feat(spiders): Add exporters to CSV/XML 2026-07-26 23:13:35 +03:00
Karim shoair 347db4c76b docs: add the auto throttle option 2026-07-26 23:04:28 +03:00
Karim shoair ca51962421 feat(spiders): Auto throttle based on website speed/protection 2026-07-26 22:54:36 +03:00
Karim shoair 9526bac808 agent: update the skill with the latest updates 2026-07-26 19:04:48 +03:00
Karim shoair 563b134f9e feat(mcp): Add auth to the mcp server and the option to set allowed host 2026-07-26 19:02:16 +03:00
Karim shoair 0ca4aeabae docs: Update main pages with the recently added features 2026-07-26 16:40:49 +03:00
Karim shoair 9ecffdb42f fix(cdp): Make browsers accept CDP urls with http protocol 2026-07-26 16:23:00 +03:00
JanRK f293d83fda ci(docker): tag images with the release version on merge (#384) 2026-07-26 16:03:22 +03:00
Karim shoair d08aa90d9e Merge branch 'main' into dev 2026-07-26 16:01:45 +03:00
Karim shoair 11cd295d67 fix(stealth): stop forcing en-US so the browser follows the system locale (fixes #381)
fixes #381
2026-07-25 19:07:05 +03:00
Karim shoair b5c8963e84 fix(spiders): preserve cookies for browser-engine responses in cache (#379)
Fixes #376
2026-07-25 17:34:07 +03:00
Karim shoair a5fed0c622 Merge branch 'dev' into fix/cache-drops-browser-cookies 2026-07-25 16:48:55 +03:00
Karim shoair 08bed1589d docs: add a badge for the number of docker pulls 2026-07-24 16:39:32 +03:00
Karim shoair 259d667a25 build: pump up version 2026-07-24 01:49:50 +03:00
Semianchuk Vitalii 2f400555c3 fix: remove dead fetchall() after INSERT and correct retrieve() error message (#377)
* docs: updating a sponsor URL

* Remove unnecessary fetchall() after INSERT OR REPLACE

cursor.fetchall() after an INSERT OR REPLACE statement is a no-op
since INSERT does not return any rows. This call is dead code.

* fix: correct error message in retrieve() abstract method

---------

Co-authored-by: Karim shoair <D4Vinci@users.noreply.github.com>
2026-07-24 01:48:24 +03:00
Karim shoair 1208199c49 perf(parser): make get_all_text() O(nodes) (#378) 2026-07-24 01:29:34 +03:00
Karim shoair 9c3fac74ee Merge branch 'dev' into perf/get-all-text-single-pass 2026-07-24 01:29:13 +03:00
Amit Vijapur 3ed4fde93a fix(spiders): preserve cookies for browser-engine responses in cache (#376)
ResponseCacheManager.put() only recognized the flat `dict` shape that
static-engine responses use for `Response.cookies`. Browser engines
(Playwright) populate cookies as a `tuple` of full cookie dicts, so the
isinstance(dict) guard fell through to the `else {}` branch and silently
discarded every cookie before it ever reached the cache file. Replaying a
cached browser-engine response then rebuilt it with cookies={}.

Preserve whichever shape the cookies are in instead of collapsing anything
non-dict to {}: serialize a tuple as a JSON array and a dict as a JSON
object, then restore the tuple shape on read since JSON arrays deserialize
back as `list`.

Add regression tests covering both the browser-engine (tuple) and
static-engine (dict) cookie round-trip through put()/get().
2026-07-21 00:38:48 +08:00
Karim shoair 07a548362f docs: moving up a sponsor 2026-07-20 16:04:27 +03:00
yetval ed0202fe3d perf(parser): skip re-walking nested ignored subtrees when building the ignored set 2026-07-15 23:42:07 -04:00
yetval f4fc6a1baa perf(parser): make Selector.get_all_text() O(nodes) by precomputing ignored subtrees 2026-07-15 23:33:32 -04:00
Karim shoair 5320319155 docs: updating a sponsor URL 2026-07-15 18:21:18 +03:00
Karim shoair 2c647c6be6 ops: Change Docker cache mode from max to min
Switch GitHub Actions Docker build cache to minimal mode for faster CI builds and reduced cache overhead in the workflow.
2026-07-13 15:57:17 +03:00