La primera versió estable de la utilitat per descarregar contingut web GNU Wget2

Després de tres anys i mig de desenvolupament, s'ha presentat la primera versió estable del projecte GNU Wget2, desenvolupant una versió completament redissenyada del programa per automatitzar la descàrrega recursiva de contingut GNU Wget. GNU Wget2 va ser dissenyat i reescrit des de zero i destaca per moure la funcionalitat bàsica d'un client web a la biblioteca libwget, que es pot utilitzar per separat a les aplicacions. La utilitat té llicència sota GPLv3+ i la biblioteca té llicència LGPLv3+.

En lloc de reelaborar gradualment la base de codi existent, es va decidir refer tot des de zero i establir una branca Wget2 separada per implementar idees per a la reestructuració, augmentar la funcionalitat i fer canvis que trenquin la compatibilitat. Amb l'excepció de l'abandonament del protocol FTP i del format WARC, wget2 pot actuar com a substitut transparent de la clàssica utilitat wget en la majoria de situacions.

Dit això, wget2 té algunes diferències de comportament documentades, ofereix unes 30 opcions addicionals i deixa de donar suport a diverses dotzenes d'opcions. S'ha inclòs el processament d'opcions com “-ask-password”, “-header”, “-exclude-directories”, “-ftp*”, “-warc*”, “-limit-rate”, “-relative” aturat " i "--unlink".

Les innovacions clau inclouen:

  • Moviment de la funcionalitat a la biblioteca libwget.
  • Transició a l'arquitectura multiprocés.
  • Possibilitat d'establir múltiples connexions en paral·lel i descarregar a diversos fils. També és possible paral·lelitzar la descàrrega d'un fitxer dividit en blocs mitjançant l'opció "-chunk-size".
  • Suport del protocol HTTP/2.
  • Utilitzeu la capçalera HTTP If-Modified-Since per baixar només les dades modificades.
  • Canvieu a utilitzar limitadors d'amplada de banda externs, com ara el degoteig.
  • Suport per a la capçalera Accept-Encoding, la transferència de dades comprimides i els algorismes de compressió brotli, zstd, lzip, gzip, deflate, lzma i bzip2.
  • Suport per a TLS 1.3, OCSP (Online Certificate Status Protocol) per comprovar els certificats revocats, mecanisme HSTS (HTTP Strict Transport Security) per forçar la redirecció a HTTPS i HPKP (HTTP Public Key Pinning) per a l'enllaç de certificats.
  • Capacitat d'utilitzar GnuTLS, WolfSSL i OpenSSL com a backend per a TLS.
  • Suport per a l'obertura ràpida de connexions TCP (TCP FastOpen).
  • Suport integrat de format Metalink.
  • Suport per a noms de domini internacionalitzats (IDNA2008).
  • La capacitat de treballar simultàniament a través de diversos servidors intermediaris (un flux es carregarà mitjançant un servidor intermediari i el segon mitjançant un altre).
  • Suport integrat per a fonts de notícies en formats Atom i RSS (per exemple, per escanejar i baixar enllaços). Les dades RSS/Atom es poden descarregar des d'un fitxer local o a través de la xarxa.
  • Suport per extreure URL dels mapes del lloc. Disponibilitat d'analitzadors per extreure enllaços de fitxers CSS i XML.
  • Suport per a la directiva "inclou" als fitxers de configuració i distribució de la configuració entre diversos fitxers (/etc/wget/conf.d/*.conf).
  • Mecanisme de memòria cau de consultes DNS integrat.
  • Possibilitat de recodificar contingut canviant la codificació del document.
  • Comptabilització del fitxer "robots.txt" durant les descàrregues recursives.
  • Mode d'escriptura fiable amb la crida fsync() després de desar les dades.
  • La capacitat de reprendre les sessions TLS interrompudes, així com guardar la memòria cau i desar els paràmetres de la sessió TLS en un fitxer.
  • Mode "--input-file-" per carregar URL que arriben a través del flux d'entrada estàndard.
  • Comprovació de l'abast de la galeta amb el directori de sufixos de domini públic (llista de sufixos públics) per aïllar els diferents llocs allotjats en el mateix domini de segon nivell (per exemple, "a.github.io" i "b.github. io”).
  • Admet la descàrrega de streaming ICEcast/SHOUTcast.

Font: opennet.ru

Afegeix comentari