Lëshimi i parë i qëndrueshëm i mjetit për shkarkimin e përmbajtjes së uebit GNU Wget2

Pas tre vitesh e gjysmë zhvillimi, është paraqitur versioni i parë i qëndrueshëm i projektit GNU Wget2, duke zhvilluar një version plotësisht të ridizajnuar të programit për automatizimin e shkarkimit rekurziv të përmbajtjes GNU Wget. GNU Wget2 u projektua dhe u rishkrua nga e para dhe është i dukshëm për lëvizjen e funksionalitetit bazë të një klienti ueb në bibliotekën libwget, e cila mund të përdoret veçmas në aplikacione. Shërbimi është i licencuar sipas GPLv3+ dhe biblioteka është i licencuar sipas LGPLv3+.

Në vend që të ripunohej gradualisht baza ekzistuese e kodit, u vendos të ribëhej gjithçka nga e para dhe të krijohej një degë e veçantë Wget2 për të zbatuar idetë për ristrukturimin, rritjen e funksionalitetit dhe bërjen e ndryshimeve që prishin përputhshmërinë. Me përjashtim të zhvlerësimit të protokollit FTP dhe formatit WARC, wget2 mund të veprojë si një zëvendësim transparent për mjetin klasik wget në shumicën e situatave.

Thënë kjo, wget2 ka disa ndryshime të dokumentuara në sjellje, ofron rreth 30 opsione shtesë dhe ndalon mbështetjen e disa dhjetëra opsioneve. Përfshirë përpunimin e opsioneve të tilla si "-pyet-password", "-header", "-exclude-directories", "-ftp*", "-warc*", "-limit-rate", "-relative" ka qenë ndaloi " dhe "--çlidh".

Risitë kryesore përfshijnë:

  • Zhvendosja e funksionalitetit në bibliotekën libwget.
  • Kalimi në arkitekturë me shumë fije.
  • Aftësia për të krijuar lidhje të shumta paralelisht dhe për të shkarkuar në fije të shumta. Është gjithashtu e mundur të paralelizohet shkarkimi i një skedari të ndarë në blloqe duke përdorur opsionin "-chunk-size".
  • Mbështetje për protokollin HTTP/2.
  • Përdorni titullin If-Modified-Since HTTP për të shkarkuar vetëm të dhënat e modifikuara.
  • Kalo te përdorimi i kufizuesve të jashtëm të gjerësisë së brezit, si p.sh. trickle.
  • Mbështetje për titullin Accept-Encoding, transferimin e të dhënave të ngjeshur dhe algoritmet e kompresimit brotli, zstd, lzip, gzip, deflate, lzma dhe bzip2.
  • Mbështetje për TLS 1.3, OCSP (Online Certificate Status Protocol) për kontrollimin e certifikatave të revokuara, mekanizmin HSTS (HTTP Strict Transport Security) për të detyruar ridrejtimin në HTTPS dhe HPKP (Gjozhimi i çelësit publik HTTP) për lidhjen e certifikatës.
  • Aftësia për të përdorur GnuTLS, WolfSSL dhe OpenSSL si mbështetëse për TLS.
  • Mbështetje për hapjen e shpejtë të lidhjeve TCP (TCP FastOpen).
  • Mbështetje e integruar e formatit Metalink.
  • Mbështetje për emrat e domain të ndërkombëtarizuar (IDNA2008).
  • Aftësia për të punuar njëkohësisht përmes disa serverëve proxy (një transmetim do të ngarkohet përmes një përfaqësuesi, dhe i dyti përmes një tjetri).
  • Mbështetje e integruar për burimet e lajmeve në formatet Atom dhe RSS (për shembull, për skanimin dhe shkarkimin e lidhjeve). Të dhënat RSS/Atom mund të shkarkohen nga një skedar lokal ose përmes rrjetit.
  • Mbështetje për nxjerrjen e URL-ve nga Sitemaps. Disponueshmëria e analizuesve për nxjerrjen e lidhjeve nga skedarët CSS dhe XML.
  • Mbështetje për direktivën 'përfshi' në skedarët e konfigurimit dhe shpërndarjen e cilësimeve nëpër disa skedarë (/etc/wget/conf.d/*.conf).
  • Mekanizmi i integruar i memorizimit të pyetjeve DNS.
  • Mundësia e rikodimit të përmbajtjes duke ndryshuar kodimin e dokumentit.
  • Kontabilizimi për skedarin "robots.txt" gjatë shkarkimeve rekursive.
  • Modaliteti i besueshëm i shkrimit me thirrje fsync() pas ruajtjes së të dhënave.
  • Mundësia për të rifilluar seancat e ndërprera TLS, si dhe për të ruajtur memorien dhe për të ruajtur parametrat e sesionit TLS në një skedar.
  • Modaliteti "--input-file-" për ngarkimin e URL-ve që vijnë përmes rrjedhës standarde të hyrjes.
  • Kontrollimi i shtrirjes së "Cookie" kundrejt drejtorisë së prapashtesave të domenit publik (Lista e prapashtesave publike) për të izoluar nga njëri-tjetri sajte të ndryshme të pritura në të njëjtin domen të nivelit të dytë (për shembull, "a.github.io" dhe "b.github. io”).
  • Mbështet shkarkimin e transmetimit ICEcast/SHOUTcast.

Burimi: opennet.ru

Shto një koment