- Python Scrapy की architecture को Go भाषा की performance का उपयोग करते हुए native तरीके से implement किया गया high-performance web scraping framework
- सिर्फ एक
goscrapy startproject कमांड से project structure, Go module initialization, dependency resolution तक automatic scaffolding
- Go के concurrency model पर आधारित high-throughput parallel scraping, और retry, cookie management, concurrency handling को framework अपने आप manage करता है
- विफलता होने पर exponential back-off लागू करने वाला automatic retry
- Spider → Engine → Scheduler → Worker → Middleware → HTTP Client तक जाने वाली स्पष्ट data-flow architecture
- Spider request को Engine तक भेजता है, और Engine उसे Scheduler में schedule करता है
- Scheduler Worker Queue से उपलब्ध worker सुनिश्चित करने के बाद task को Worker तक भेजता है
- Worker Executor को trigger करता है, और Executor Middlewares से होकर HTTP Client तक request भेजता है
- response उल्टे क्रम में Middlewares → Executor → Spider callback तक वापस लौटता है
- जब Spider record को yield करता है, तो Engine PipelineManager के जरिए data export को DB, CSV, file आदि में execute करता है
- CSV, JSON, MongoDB, Google Sheets, Firebase सहित कई export pipelines built-in रूप में शामिल
- Azure TLS, Dupefilter आदि built-in middleware उपलब्ध, और लगभग हर layer को replace या extend किया जा सकने वाला design
- chaining की जा सकने वाली CSS/XPath selectors के साथ flexible HTML parsing
settings.go में middleware और pipeline को centralized तरीके से configure किया जाता है, और spider.go सिर्फ parsing logic पर केंद्रित रहने वाली साफ-सुथरी संरचना देता है
- Google Maps scraper, Fingerprint Spoofing (bot detection bypass), TUI real-time monitoring जैसे practical examples उपलब्ध
- फिलहाल v0.x development stage में, और stable v1.0 की दिशा में Core API में लगातार सुधार जारी
- Business Source License (BSL) : commercial products में स्वतंत्र रूप से उपयोग संभव, लेकिन framework को खुद एक competing service के रूप में resale करने पर प्रतिबंध
अभी कोई टिप्पणी नहीं है.