Commit Graph

83 Commits

Author SHA1 Message Date
Rustem Kamalov
08edec5779 fix(captcha): exit non-zero on misconfig, tighten solver gate tests 2026-04-20 20:12:19 +03:00
Rustem Kamalov
1842c4bb07 feat: implement DrainAndCloseResponse for safe HTTP response handling and update search handlers 2026-04-20 19:39:27 +03:00
Rustem Kamalov
e89b1a3a50 feat: propagate request context across search, retry, limiter, and browser navigation 2026-04-20 05:53:13 +03:00
Rustem Kamalov
0b7fbd3a45 docs: add godoc for public api and readme response examples 2026-04-20 01:20:52 +03:00
Rustem Kamalov
a9986fd8fe docs: add architecture, OpenAPI spec, Swagger UI, and contributing guide 2026-04-15 03:25:06 +03:00
Rustem Kamalov
e1142ac23b Improve tests and error handling for search engines
Improve tests and error handling for search engines
2026-04-15 02:53:11 +03:00
Rustem Kamalov
e5e0c96303 Add URL builder edge-case tests and server endpoint coverage 2026-04-15 02:50:52 +03:00
Rustem Kamalov
3af8612ce5 Fingerprint checks during browser integration tests 2026-04-15 02:36:55 +03:00
Rustem Kamalov
ecacfab4d6 Add integration tests for multiple search engines and enhance error handling
- Implement integration tests for Baidu, Bing, DuckDuckGo, Google, and Yandex.
- Refactor test utility functions to avoid core import cycles.
2026-04-14 02:05:58 +03:00
Rustem Kamalov
de59d07d47 Fix linter errors. Enhance error handling in search functions across multiple engines 2026-04-14 01:12:17 +03:00
Rustem Kamalov
bc59de46fb Add CI and integration workflows 2026-04-14 01:04:32 +03:00
Rustem Kamalov
9e22f68c6f Add sanitized real html pages (google,yandex,baidu) for tests. Raw search HTML parser tests. 2026-04-14 00:41:35 +03:00
Rustem Kamalov
518ccdbdbd Revise README for clarity and project details
Updated project description and clarified affiliation.
2026-04-07 22:44:20 +03:00
Rustem Kamalov
f4c6bf128d Clarify OpenSerp's open-source status and affiliations
Added clarification about OpenSerp's open-source status and third-party affiliations.
2026-04-07 18:34:12 +03:00
Rustem Kamalov
10decd5740 Fix config argument, update deault config. v0.6.0 2026-04-04 19:32:23 +03:00
Rustem Kamalov
78a9f1e264 Merge pull request #22 from karust/dev
Add runtime proxy override, update readme
2026-04-04 18:57:56 +03:00
Rustem Kamalov
9f84a648f4 Update config and readme 2026-04-04 18:54:10 +03:00
Rustem Kamalov
3c07c7789a Runtime proxy override 2026-04-01 17:38:13 +03:00
Rustem Kamalov
3daa48e6a3 Proxy policy wiring and fail-closed execution
- replace proxy wiring with global and per-engine tag policies
- split stats endpoints and lock fail-closed proxy behavior with tests
2026-04-01 00:54:21 +03:00
Rustem Kamalov
8bec5578c0 Implement proxy support with configuration, pooling, and integration tests
- Added ProxyConfig and ProxyPool structures to manage proxy settings and rotation.
- Implemented normalization functions for proxy URLs and configurations.
- Created a new ProxyPool that supports failure tracking and round-robin selection.
- Integrated proxy handling into the ResilientSearcher for search queries.
- Added integration tests for various proxy scenarios including SOCKS5 and HTTP proxies.
- Updated server and resilience stats to include proxy information.
- Refactored search functions to utilize the new proxy client.
- Removed direct proxy handling from search_raw.go and yandex/search_raw.go, using the new core proxy client instead.
- Added unit tests for proxy configuration and pool behavior.
2026-03-30 22:46:03 +03:00
Rustem Kamalov
0146891076 Add bounded TTL cache for dedicated and mega endpoints 2026-03-30 00:31:49 +03:00
Rustem Kamalov
f219c78d84 Add retry/circuit breaker, configurable fallback and CORS.
Based in part on work from PR #21 by @Sai-Prashanth123, adapted and integrated with project-specific fixes.
2026-03-25 23:31:41 +03:00
Rustem Kamalov
0fcfc06baa Add healthcheck endpoint 2026-03-25 04:09:37 +03:00
Rustem Kamalov
a4d459761e Add custom browser path support 2026-03-17 02:18:51 +03:00
Rustem Kamalov
7cdd358cad Add filter param to Google. Add start param for supporting engines 2026-03-17 01:54:25 +03:00
Rustem Kamalov
6c8e205af2 Fix duckduck date and limit filtering. Deduplicate results v0.5.4 2025-10-08 03:33:48 +03:00
Rustem Kamalov
b4ef23a913 Add megasearch API response example v0.5.3 2025-10-01 04:56:40 +03:00
Rustem Kamalov
0a347edc77 New megasearch and megaimage functionality. Update readme 2025-10-01 04:34:41 +03:00
Rustem Kamalov
de0a6a80d4 DuckDuck fixes. Non-stealth antibot fixes 2025-10-01 04:30:58 +03:00
Rustem Kamalov
74fc15a6e2 Add DuckDuckGo. Add custom logger. Fix arg priority and other issues 2025-09-30 05:27:54 +03:00
Rustem Kamalov
f8815b4560 Add Bing search+images 2025-09-19 02:11:55 +03:00
Rustem Kamalov
49e9837878 Fix build issues 2025-08-29 03:44:38 +03:00
Rustem Kamalov
fb8e8cd6fe Merge pull request #12 from PACHAKUTlQ/main
Bug fixes and TLS fingerprint spoofing
2025-08-29 03:35:13 +03:00
Pachakutiq
f7654a52f0 chore: Update dependencies 2025-08-28 17:20:28 +08:00
Pachakutiq
8fdefb6ed5 fix(google)!: Fix missing datas 2025-08-28 16:44:22 +08:00
Pachakutiq
81fc057c83 feat(raw search)!: Use utls to mimic chrome TLS clienthello fingerprint 2025-08-28 16:43:39 +08:00
Pachakutiq
c35c5f134d chore: Add utls as dependency 2025-08-28 16:42:18 +08:00
Pachakutiq
83385711fe chore: Update dependency versions 2025-08-28 16:41:58 +08:00
Pachakutiq
c980ca4dc4 fix!: Allow insecure TLS connections 2025-08-28 16:35:53 +08:00
Rustem Kamalov
d8c3700252 Stealth browser as option. Update default config v0.4.1 2025-08-18 22:49:45 +03:00
Rustem Kamalov
7f0f32ac4e Handle failed navigation v0.4 2025-07-03 02:29:12 +03:00
Rustem Kamalov
ba94c69dd0 Merge pull request #10 from PACHAKUTlQ/main
Support http and socks5 proxy and fix failure due to updates of DOM on Google SERP
2025-07-03 02:09:18 +03:00
Pachakutiq
c387268d20 chore: Exclude .aider* in .gitignore 2025-05-27 15:05:53 +08:00
Pachakutiq
2f8ee2164d fix: Fix serve mode not supporting raw mode 2025-04-10 18:07:57 +08:00
Pachakutiq
6691ebaadd fix: Remove duplicated results for all search engines and both modes 2025-04-10 16:59:31 +08:00
Pachakutiq
8099dae3ce fix: Remove duplicated results in google/search.go 2025-04-10 15:35:54 +08:00
Pachakutiq
2f77dd6fe5 doc: Add proxy guide in README.md 2025-04-09 02:55:59 +08:00
Pachakutiq
90f27c2974 feat: Support short flag -x for proxy 2025-04-09 02:54:42 +08:00
Pachakutiq
ec03439b2f style: Format README.md using prettier 2025-04-09 02:11:22 +08:00
Pachakutiq
5ad89b2ea8 feat: Support proxy for serve 2025-04-09 02:08:01 +08:00