Web Scraping and OSINT Engine in Rust | Dweve Winnow

Winnow is a Rust source-intelligence and web-scraping engine. Apache-2.0 terms, self-hosted; the repository publishes in the eighth release round.

Správa znalostí nad zdroji shromážděnými nástrojem Winnow.

Indexujte shromážděná data pro rychlé vyhledávání.

Analyzujte výstup nástroje Winnow do stromů s obsahem jako adresou.

Začněte jednou opakující se otázkou. Winnow ji promění v pojmenovanou cestu s explicitními zdroji, sdílenými pravidly načítání, typovaným výstupem a záznamem běhu, který může další systém prozkoumat.

Napříč 66 kategoriemi. Plus 28 enginů, 325 kolektorů.

Core nemá žádné runtime závislosti. Stealth prohlížeč je volitelný, Python.

Projektový list zaznamenává, co je součástí: kompaktní Rust binárku, katalog scraperů a kolektorů, formáty výstupu, ovládací prvky požadavků, jazykové vazby a čtyři integrační rozhraní používaná zbytkem stacku.

winnow scraping, vyhledávání, procházení

Spusťte Winnow jako jeden binární soubor, vložte jej jako Rust crate, spusťte jej jako HTTP službu axum nebo jej sestavte pro prohlížeč a edge. Stejné scrapery a stejný tvar výstupu fungují ve všech čtyřech režimech.

Předpřipravené scrapery pro zdroje, které analytici už používají, od vládních a vědeckých portálů po zprávy, finance a otevřená data. Každý scraper je typovaná Rust struktura. Vlastní scrapery se zařadí vedle vestavěných a dodržují stejný výstupní kontrakt.

O zákonném základu rozhoduje provozovatel

Na žádost: zdroj, URL, časové razítko, stav, hash obsahu.

Soukromé síťové rozsahy jsou blokovány ve všech vstupech URL.

Tokenové kbelíky pro každou doménu odpovídající zdokumentované politice zdroje.

Ve výchozím stavu odepřeno. Necachované domény jsou odmítnuty, dokud není načten robots.txt.

Winnow vynucuje robots.txt s politikou odepření ve výchozím stavu, omezení rychlosti pro každou doménu, ochranu SSRF, pseudonymizaci GDPR a auditní protokolování na žádost jako konstrukční omezení, nikoli volitelná nastavení. Co je mimo kontrolu Winnow: zákonný základ provozovatele pro shromažďování dat, volby minimalizace dat a rozhodnutí o uchovávání dat v dalším zpracování. Tato stránka netvrdí certifikaci GDPR, protože knihovna nemůže toto rozhodnutí učinit za vás.

text, JSON, JSONL, CSV nebo HTML. Vhodné pro roury.

Selektory CSS extrahují typovaná pole z DOM.

Nejprve obyčejný HTTP, pak stealth HTTP, a prohlížeč pouze v případě blokování.

28 vyhledávacích enginů dotazováno paralelně, výsledky sloučeny a seřazeny.

Jeden dotaz se stane strukturovanými záznamy ve čtyřech fázích. Discovery dotazuje 28 vyhledávačů paralelně. Fetch eskaluje z běžného HTTP přes požadavky s TLS otiskem až po stealth prohlížeč, a to pouze tehdy, když web aktivně blokuje. Parse spouští typované scrapery nad DOM. Výstup zapisuje jeden z pěti formátů na stdout.

Každý vyhledávač má vlastní API, kvóty a wrapper.

Rotační služby přidávají samostatnou fakturaci a rozdíly v kvalitě IP adres.

Selenium nebo Playwright přidává samostatnou provozní plochu a náklady na zdroje.

Křehký kód pro každý web, který se tiše rozbije, když se změní markup.

Většina stacků pro sběr dat kombinuje scrapery, headless prohlížeče, proxy služby, vyhledávací wrappery a vlastní údržbové skripty. Glue vrstva se stane projektem. Každý nástroj má vlastní provozní plochu, vlastní fakturační model a vlastní předpoklady o slušnosti.

Právní základ, minimalizace a uchovávání zůstávají na vás. Winnow zaznamenává toto rozhodnutí; nedělá ho za vás.

Každý požadavek je zaznamenán se zdrojem, adresou, časem a výsledkem.

Identifikátory lze pseudonymizovat při sběru dat, nejsou přenášeny v surové podobě.

Pravidla pro roboty a limity rychlosti na doménu jsou vynucovány od prvního požadavku.

Sběr webových dat s sebou nese skutečná rizika: zablokování, zpracování osobních údajů, požadavky na nebezpečné adresy a žádný záznam o tom, co se stalo. Winnow se s každým z těchto problémů vypořádává od začátku, s pravidly slušnosti, pseudonymizací, ochranou proti nebezpečným cílům a protokolem pro každý požadavek. Co nedělá, je předstírat, že dělá vaše právní rozhodnutí. Váš právní základ, kolik toho uchováváte a jak dlouho, zůstává vaší volbou, a nečiníme žádné prohlášení o certifikaci, které by knihovna nemohla čestně učinit.

Složení stacku do jednoho binárního souboru znamená jednu věc k naučení, spuštění a opravě, místo pěti plus jejich spojů.

Křehké scrapery pro jednotlivé weby a glue skripty, které drží stack pohromadě, tiše pohlcují čas inženýrů měsíc co měsíc.

Rotace proxy a vyhledávací kvóty jsou účtovány podle použití. Self-hostovaný binární soubor na infrastruktuře, kterou už platíte, nemá žádný překvapivý účet za provoz.

Kolekční stack se obvykle tříští do scraperů specifických pro jednotlivé weby, automatizace prohlížečů, správy proxy, vyhledávacích konektorů a lepicího kódu. Winnow tyto pohyblivé části koordinuje pod jedinou provozní politikou, takže operace může opravit jednu cestu, sledovat jeden záznam a zopakovat jednu otázku.

Vstupy, načasování, rozhodnutí a výsledky zůstávají k dispozici pro opakování a kontrolu.

Pravidla pro parsování, pseudonymizaci, normalizaci a výstup jsou explicitní.

Omezení rychlosti, politika robotů, opakování a ochrana před nebezpečnými adresami cestují s cestou.

Každý vyhledávač, web, API, kanál a soubor je v běhu pojmenován.

Opakovaná kolekční úloha by se neměla chovat jako pět nesouvisejících skriptů. Winnow dává objevování, načítání, parsování, normalizaci, výstupu a záznamu běhu jednu společnou cestu, zatímco nasazení zůstává samostatnou provozní volbou.

Generujte JSON, CSV, streamy, uložené záznamy nebo tvar odpovědi, který váš pracovní postup očekává.

Objevování, načítání, parsování a výstup sdílejí jednu politiku a jeden záznam běhu.

Vyhledávače, weby, API, kanály a soubory mohou vstoupit do stejného běhu.

Winnow začíná otázkou, rozhodne, které povrchy zdrojů patří do běhu, objeví kandidáty, zdvořile je načte, zpracuje užitečný materiál a vydá typované výsledky. Cesta je zaznamenána, takže stejnou práci lze opakovat a zkontrolovat.

Zaznamenává, co navštívil, takže odpověď je už tam, když se někdo zeptá.

Může běžet zcela v Evropě, na strojích, kterým důvěřujete.

Dodržuje pravidla, která každý web nastaví, a počká, až na něj přijde řada.

Každý výsledek si zachovává poznámky ke zdroji a kolekční cestu, takže služba může ukázat, odkud informace pochází.

První otázky jsou rozumné: mohlo by to způsobit potíže, kam jdou mé informace a jak mohu vidět, co to udělalo? Zde jsou jasné odpovědi. Péče a otevřenost jsou ve Winnow zabudovány od začátku, nejsou prodávány jako příplatky.

Seznam je malý soubor, který si můžete uložit a vrátit se k němu, ne něco, co zmizí.

Každý řádek říká, odkud pochází, takže si zdroj můžete vždy sami prohlédnout.

Nepořádek je uklizený. Vidíte užitečné části, které jste chtěli, a odkud každá pochází.

Místo hromady webů ke čtení dostanete jeden přehledný seznam s řádkem pro každou položku a poznámkou, odkud pochází. Přečtěte si ho, vytiskněte si ho, nebo si ho nechte. Promění spleť otevřených karet v záznam, který si můžete později zkontrolovat.

Každá karta ukazuje přesně ten druh věty, kterou byste řekli, takže nikdy nejste ztraceni.

Nejsou tu žádné nabídky ani nastavení, se kterými byste museli zápasit. Prostě se zeptáte.

Popište, co chcete, svými běžnými slovy, jako když mluvíte s člověkem.

Nepotřebujete žádná speciální slova. Zeptejte se na novinky k tématu, ceny z několika obchodů, úřední oznámení nebo časy události. Vyberte si příklad, abyste viděli, jak se můžete zeptat a jaký druh uspořádané odpovědi se může vrátit.

Vrátí se úhledný seznam, tak jako účtenka přehledně vypisuje, co jste si koupili.

Navštíví stránky a přečte je za vás, slušně.

Web je obrovský a velká část je jen šum. Winnow přečte relevantní stránky, ponechá užitečné části a nepořádek nechá stranou. Zeptáte se prostými slovy a dostanete uspořádanou odpověď se zdroji. Není se co nového učit.

Pět samostatných nástrojů a jejich lepidlo

Vlastní zdrojová práce, kterou vlastníte

Winnow dává opakované zdrojové práci jednu řízenou cestu. Vyhledávače, weby, API, kanály a soubory vstupují do stejného běhu; objevování, získávání, parsování a typovaný výstup sdílejí jednu politiku a jeden záznam. Provoz získává opakovatelný proces místo pěti kolektorů, které se rozcházejí.

Každý výsledek si zachovává svou stopu zdroje

Asistent, který pro vás shromažďuje fakta

Když Fabric potřebuje aktuální informace, Winnow shromáždí relevantní části ze zdrojů zvolených pro službu a vrátí úhledný výsledek s připojenými zdroji. Nekonfigurujete scrapery ani nepíšete kód; Winnow pracuje na pozadí a vede záznam o tom, jak byly informace shromážděny.

robots.txt, rate limity, SSRF ochrana záměrně

1 325 scraperů webů, 28 vyhledávačů, 325 kolektorů

Scrapy, Selenium, proxy, vlastní skripty

Winnow zkompiluje otázku, cíl nebo podmínku sledování do opakovatelné sběrné trasy. Objevování zahrnuje vyhledávače a katalog scraperů; získávání eskaluje z HTTP na automatizaci prohlížeče; parsování normalizuje výsledek na typovaný text, JSON, JSONL, CSV nebo HTML. Každý požadavek prochází sdílenými kontrolami rate limitu, robots, SSRF a auditu.

Ve výchozím stavu zamítnout, analyzováno před každým načtením.

Interní a soukromé adresy jsou blokovány.

Každý požadavek je zaznamenán a exportovatelný.