GNU veebisisu Wget2 allalaadimise utiliidi esimene stabiilne väljalase

Pärast kolm ja pool aastat kestnud arendustööd esitleti GNU Wget2 projekti esimest stabiilset väljalaset, mis arendab programmi täielikult ümber kujundatud versiooni GNU Wget sisu rekursiivse allalaadimise automatiseerimiseks. GNU Wget2 kujundati ja kirjutati ümber nullist ning on tähelepanuväärne veebikliendi põhifunktsioonide teisaldamise poolest libwgeti teeki, mida saab rakendustes eraldi kasutada. Utiliit on litsentsitud GPLv3+ ja raamatukogu LGPLv3+ alusel.

Olemasoleva koodibaasi järkjärgulise ümbertöötamise asemel otsustati kõik nullist ümber teha ja luua eraldi Wget2 haru, et rakendada ideid ümberstruktureerimiseks, funktsionaalsuse suurendamiseks ja ühilduvust rikkuvate muudatuste tegemiseks. Välja arvatud FTP-protokolli ja WARC-vormingu aegunud, võib wget2 enamikus olukordades toimida klassikalise wget-utiliidi läbipaistva asendusena.

Nagu öeldud, on wget2-l mõned dokumenteeritud erinevused käitumises, see pakub umbes 30 lisavõimalust ja lõpetab mitmekümne valiku toetamise. Kaasatud on selliste valikute nagu “-ask-password”, “-header”, “-exclude-directories”, “-ftp*”, “-warc*”, “-limit-rate”, “-relative” töötlemine. peatatud " ja "--unlink".

Peamised uuendused hõlmavad järgmist:

  • Funktsioonide teisaldamine libwgeti teeki.
  • Üleminek mitme keermega arhitektuurile.
  • Võimalus luua paralleelselt mitu ühendust ja alla laadida mitmele lõimele. Samuti on võimalik paralleelstada ühe plokkideks jagatud faili allalaadimine, kasutades valikut “-chunk-size”.
  • HTTP/2 protokolli tugi.
  • Kasutage ainult muudetud andmete allalaadimiseks päist If-Modified-Since HTTP.
  • Lülituge väliste ribalaiuse piirajate (nt trickle) kasutamisele.
  • Accept-Encoding päise, tihendatud andmeedastuse ning brotli, zstd, lzip, gzip, deflate, lzma ja bzip2 tihendusalgoritmide tugi.
  • TLS 1.3, OCSP (Online Certificate Status Protocol) tugi tühistatud sertifikaatide kontrollimiseks, HSTS (HTTP Strict Transport Security) mehhanism HTTPS-ile ümbersuunamise sundimiseks ja HPKP (HTTP avaliku võtme kinnitamine) sertifikaatide sidumiseks.
  • Võimalus kasutada TLS-i taustaprogrammidena GnuTLS-i, WolfSSL-i ja OpenSSL-i.
  • Tugi TCP-ühenduste kiireks avamiseks (TCP FastOpen).
  • Sisseehitatud Metalinki vormingu tugi.
  • Rahvusvaheliste domeeninimede tugi (IDNA2008).
  • Võimalus töötada samaaegselt mitme puhverserveri kaudu (üks voog laaditakse ühe puhverserveri kaudu ja teine ​​teise puhverserveri kaudu).
  • Sisseehitatud tugi Atom- ja RSS-vormingus uudistevoogudele (näiteks linkide skannimiseks ja allalaadimiseks). RSS/Atom andmeid saab alla laadida kohalikust failist või võrgu kaudu.
  • Tugi saidiplaanidest URL-ide eraldamiseks. Parserite saadavus linkide ekstraktimiseks CSS- ja XML-failidest.
  • "Kaasamise" direktiivi tugi konfiguratsioonifailides ja sätete jaotamine mitme faili vahel (/etc/wget/conf.d/*.conf).
  • Sisseehitatud DNS-päringu vahemällu salvestamise mehhanism.
  • Sisu ümberkodeerimise võimalus dokumendi kodeeringut muutes.
  • Faili „robots.txt” arvestamine rekursiivse allalaadimise ajal.
  • Usaldusväärne kirjutusrežiim fsync() kutsega pärast andmete salvestamist.
  • Võimalus jätkata katkestatud TLS-i seansse, samuti vahemällu salvestada ja faili salvestada TLS-i seansi parameetreid.
  • Režiim "--input-file-" standardse sisendvoo kaudu tulevate URL-ide laadimiseks.
  • Küpsise ulatuse kontrollimine üldkasutatavate järelliidete kataloogi (avalik sufiksite loend), et eraldada üksteisest erinevad saidid, mida hostitakse samas teise taseme domeenis (nt „a.github.io” ja „b.github. io”).
  • Toetab ICEcast/SHOUTcast voogesituse allalaadimist.

Allikas: opennet.ru

Lisa kommentaar