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.

Pravidlá zdrojov vynucované na celej trase

Správa znalostí nad zdrojmi zbieranými cez Winnow.

Indexujte zhromaždené dáta pre rýchle vyhľadávanie.

Parsujte výstup Winnow do stromov s obsahovými adresami.

Začnite jednou opakujúcou sa otázkou. Winnow ju premení na pomenovanú trasu s explicitnými zdrojmi, zdieľanými pravidlami načítavania, typovaným výstupom a záznamom o behu, ktorý môže ďalší systém skontrolovať.

Zdroj nie je stredobodom. Stredobodom je otázka.

Naprieč 66 kategóriami. Plus 28 enginov, 325 kolektorov.

Core nemá žiadne runtime závislosti. Stealth prehliadač je voliteľný, Python.

Projektový list zaznamenáva, čo sa dodáva: kompaktnú Rust binárku, katalóg scraperov a kolektorov, formáty výstupu, kontroly požiadaviek, jazykové väzby a štyri integračné rozhrania používané zvyškom stacku.

Spustite Winnow ako jeden binárny súbor, vložte ho ako Rust crate, spustite ho ako axum HTTP službu alebo ho zostavte pre prehliadač a edge. Rovnaké scrapery a rovnaký tvar výstupu fungujú vo všetkých štyroch režimoch.

Vstavané scrapery pre zdroje, ktoré analytici už používajú, od vládnych a vedeckých portálov po správy, financie a otvorené dáta. Každý scraper je typovaná Rust štruktúra. Vlastné scrapery sa pridajú vedľa vstavaných a dodržiavajú rovnaký výstupný kontrakt.

Prevádzkovateľ rozhoduje o zákonnom základe

Na požiadanie: zdroj, URL, časová pečiatka, stav, hash obsahu.

Rozsahy súkromných sietí sú blokované v každom URL vstupe.

Tokenové vedrá pre každú doménu prispôsobené zdokumentovanej politike zdroja.

Odmietnuť štandardne. Neuložené domény sú odmietnuté, kým sa nenačíta robots.txt.

Winnow vynucuje robots.txt s politikou odmietnuť štandardne, obmedzeniami rýchlosti pre každú doménu, ochranou proti SSRF, GDPR pseudonymizáciou a auditným logovaním na požiadanie ako návrhové obmedzenia, nie voliteľné nastavenia. Čo je mimo kontroly Winnow: zákonný základ prevádzkovateľa na zber dát, rozhodnutia o minimalizácii dát a rozhodnutia o uchovávaní dát v ďalších fázach. Táto stránka netvrdí, že má GDPR certifikáciu, pretože knižnica nemôže toto rozhodnutie urobiť za vás.

text, JSON, JSONL, CSV alebo HTML. Vhodné pre rúry.

CSS selektory extrahujú typované polia z DOM.

Najprv obyčajný HTTP, potom stealth HTTP a prehliadač len ak je blokovaný.

28 vyhľadávacích enginov dopytovaných paralelne, výsledky zlúčené a zoradené.

One query becomes structured records through four stages. Discovery queries 28 engines in parallel. Fetch escalates from plain HTTP to TLS-fingerprinted requests to a stealth browser, only when a site actively blocks. Parse runs typed scrapers over the DOM. Output writes one of five formats to stdout.

Each search engine has its own API, quotas, and wrapper.

Rotation services add separate billing and IP-quality variance.

Selenium or Playwright adds a separate ops surface and resource cost.

Per-site brittle code that breaks silently when markup changes.

Most data gathering stacks combine scrapers, headless browsers, proxy services, search wrappers, and custom maintenance scripts. The glue layer becomes the project. Each tool has its own ops surface, its own billing model, and its own politeness assumptions.

Lawful basis, minimisation, and retention stay with you. Winnow records that decision; it does not make it for you.

Every request is logged with source, address, time, and result.

Identifiers can be pseudonymised as data is gathered, not carried through raw.

Robots policy and per-domain rate limits are enforced from the first request.

Gathering web data carries real risks: getting blocked, handling personal data, requests reaching unsafe addresses, and having no record of what happened. Winnow handles each of these from the start, with politeness rules, pseudonymisation, protection against unsafe destinations, and a per-request log. What it does not do is pretend to make your legal decisions. Your lawful basis, how much you keep, and how long you keep it stay your call, and we make no certification claim a library cannot honestly make.

Folding the stack into one binary means one thing to learn, run, and patch, instead of five plus their seams.

Brittle per-site scrapers and the glue scripts that hold the stack together quietly consume engineer time month after month.

Proxy rotation and search quotas are billed by use. A self-hosted binary on infrastructure you already pay for has no surprise traffic bill.

Kolekčný stack sa zvyčajne rozpadá na scrapery špecifické pre jednotlivé stránky, automatizáciu prehliadačov, správu proxy, vyhľadávacie konektory a lepiacu logiku. Winnow koordinuje tieto pohyblivé časti pod jednou politikou spustenia, takže operácie môžu opraviť jednu trasu, sledovať jeden záznam a zopakovať jednu otázku.

Vstupy, načasovanie, rozhodnutia a výsledky zostávajú dostupné na opakovanie a kontrolu.

Pravidlá parsovania, pseudonymizácie, normalizácie a výstupu sú explicitné.

Obmedzenia rýchlosti, politika robots, opakovania a ochrana pred nebezpečnými adresami cestujú s trasou.

Každý vyhľadávač, stránka, API, feed a súbor je v behu pomenovaný.

Opakovaná kolekčná úloha by sa nemala správať ako päť nesúvisiacich skriptov. Winnow dáva objavovaniu, načítavaniu, parsovaniu, normalizácii, výstupu a záznamu behu jednu spoločnú trasu, pričom nasadenie zostáva samostatnou prevádzkovou voľbou.

Emitujte JSON, CSV, streamy, uložené záznamy alebo tvar odpovede, ktorý váš pracovný postup očakáva.

Objavovanie, načítavanie, parsovanie a výstup zdieľajú jednu politiku a jeden záznam behu.

Vyhľadávače, webové stránky, API, feedy a súbory môžu vstúpiť do toho istého behu.

Winnow začína otázkou, rozhodne, ktoré povrchy zdrojov patria do behu, objaví kandidátov, načíta ich slušne, sparsuje užitočný materiál a emituje typované výsledky. Trasa je zaznamenaná, aby sa rovnaká práca dala zopakovať a skontrolovať.

Zapisuje, čo navštívil, takže odpoveď je už tam, ak sa niekto spýta.

Môže bežať úplne v rámci Európy, na strojoch, ktorým dôverujete.

Dodržiava pravidlá, ktoré každá webová stránka nastaví, a čaká na svoj rad.

Každý výsledok si ponecháva poznámky o zdroji a kolekčnú trasu, takže služba môže ukázať, odkiaľ informácia pochádza.

Prvé otázky sú rozumné: mohlo by to spôsobiť problémy, kam idú moje informácie a ako môžem vidieť, čo to urobilo? Tu sú jasné odpovede. Starostlivosť a otvorenosť sú zabudované do Winnow od začiatku, nie predávané ako extra.

Zoznam je malý súbor, ktorý si môžete uložiť a vrátiť sa k nemu, nie niečo, čo zmizne.

Každý riadok uvádza, odkiaľ pochádza, takže si zdroj môžete vždy pozrieť sami.

Neporiadok je odstránený. Vidíte užitočné časti, ktoré ste požadovali, a odkiaľ každá pochádza.

Namiesto hromady webových stránok na čítanie dostanete jeden prehľadný zoznam s riadkom pre každú položku a poznámkou, odkiaľ pochádza. Prečítajte si ho, vytlačte si ho alebo si ho ponechajte. Zmení spleť otvorených kariet na záznam, ktorý si môžete neskôr overiť.

Každá karta ukazuje presne taký druh otázky, akú by ste povedali, takže nikdy nezostanete zaseknutí.

Nie sú tu žiadne ponuky ani nastavenia, s ktorými by ste museli zápasiť. Jednoducho sa spýtate.

Opíšte, čo chcete, vlastnými každodennými slovami, ako keď sa rozprávate s človekom.

Nepotrebujete špeciálne slová. Spýtajte sa na novinky o téme, ceny z niekoľkých obchodov, úradné oznámenie alebo časy podujatia. Vyberte si príklad, aby ste videli, ako sa môžete spýtať a aký druh usporiadanej odpovede môže prísť.

Vráti sa úhľadný zoznam, tak ako účtenka vymenúva, čo ste si kúpili.

Navštívi stránky a prečíta ich za vás, slušne.

Povedzte mu, čo hľadáte, každodennými slovami.

Web je obrovský a veľa z neho je šum. Winnow prečíta relevantné stránky, ponechá užitočné časti a neporiadok nechá bokom. Spýtate sa obyčajnými slovami a dostanete usporiadanú odpoveď so zdrojmi. Nie je sa čo učiť.

Pravidlá zdrojov a bezpečnosť zabudované

Päť samostatných nástrojov a ich lepidlo

Vlastná práca so zdrojovým kódom, ktorú vlastníte

Winnow dáva opakujúcej sa práci so zdrojmi jeden riadený postup. Vyhľadávače, webové stránky, API, kanály a súbory vstupujú do toho istého behu; objavovanie, sťahovanie, parsovanie a typovaný výstup zdieľajú jednu politiku a jeden záznam. Prevádzka získa opakovateľný proces namiesto piatich zberačov, ktoré sa rozchádzajú.

Každý výsledok si zachováva svoju stopu zdroja

Dodržiava pravidlá každej webovej stránky

Asistent, ktorý pre vás zhromažďuje fakty

Keď Fabric potrebuje aktuálne informácie, Winnow zhromaždí relevantné časti zo zdrojov vybraných pre službu a vráti uprataný výsledok s priloženými zdrojmi. Nekonfigurujete scrapery ani nepíšete kód; Winnow pracuje na pozadí a vedie záznam o tom, ako boli informácie zhromaždené.

robots.txt, rate limity, SSRF ochrana od základu

1 325 scraperov webových stránok, 28 vyhľadávačov, 325 zberačov

Scrapy, Selenium, proxy, vlastné skripty

Winnow skompiluje otázku, cieľ alebo podmienku sledovania do opakovateľnej zbernej trasy. Objavovanie zahŕňa vyhľadávače a katalóg scraperov; sťahovanie postupuje od HTTP k automatizácii prehliadača; parsovanie normalizuje výsledok na typovaný text, JSON, JSONL, CSV alebo HTML. Každá požiadavka prechádza zdieľanými kontrolami rate limitu, robots, SSRF a auditu.