Pirmais stabilais utilīta laidiens GNU tīmekļa satura lejupielādei Wget2

Pēc trīsarpus gadu ilgas izstrādes ir prezentēta pirmā stabilā GNU Wget2 projekta izlaidums, kas izstrādā pilnībā pārveidotu programmas versiju GNU Wget satura rekursīvās lejupielādes automatizēšanai. GNU Wget2 tika izstrādāts un pārrakstīts no nulles, un tas ir ievērojams ar tīmekļa klienta pamata funkcionalitātes pārvietošanu uz libwget bibliotēku, ko var izmantot atsevišķi lietojumprogrammās. Lietderība ir licencēta saskaņā ar GPLv3+, un bibliotēka ir licencēta saskaņā ar LGPLv3+.

Tā vietā, lai pakāpeniski pārstrādātu esošo kodu bāzi, tika nolemts pārtaisīt visu no nulles un izveidot atsevišķu Wget2 filiāli, lai īstenotu idejas pārstrukturēšanai, funkcionalitātes palielināšanai un izmaiņu veikšanai, kas traucē saderību. Izņemot FTP protokola un WARC formāta novecošanos, wget2 vairumā gadījumu var darboties kā caurspīdīgs klasiskās wget utilīta aizstājējs.

Tomēr wget2 ir dažas dokumentētas darbības atšķirības, tas nodrošina apmēram 30 papildu opcijas un pārstāj atbalstīt vairākus desmitus opciju. Ir veikta tādu opciju apstrāde kā “-ask-password”, “-header”, “-exclude-directories”, “-ftp*”, “-warc*”, “-limit-rate”, “-relative”. apturēta " un "--atsaistīt".

Galvenie jauninājumi ietver:

  • Funkcionalitātes pārvietošana uz libwget bibliotēku.
  • Pāreja uz daudzpavedienu arhitektūru.
  • Iespēja paralēli izveidot vairākus savienojumus un lejupielādēt vairākos pavedienos. Ir iespējams arī paralēli lejupielādēt viena faila, kas sadalīts blokos, lejupielādi, izmantojot opciju “-chunk-size”.
  • HTTP/2 protokola atbalsts.
  • Izmantojiet If-Modified-Since HTTP galveni, lai lejupielādētu tikai modificētos datus.
  • Pārejiet uz ārējo joslas platuma ierobežotāju, piemēram, trickle, izmantošanu.
  • Atbalsts Accept-Encoding galvenei, saspiestu datu pārsūtīšanai un brotli, zstd, lzip, gzip, deflate, lzma un bzip2 saspiešanas algoritmiem.
  • Atbalsts TLS 1.3, OCSP (Online Certificate Status Protocol) atsaukto sertifikātu pārbaudei, HSTS (HTTP Strict Transport Security) mehānismam, lai piespiestu novirzīt uz HTTPS, un HPKP (HTTP publiskās atslēgas piespraušanai) sertifikātu saistīšanai.
  • Iespēja izmantot GnuTLS, WolfSSL un OpenSSL kā TLS aizmugursistēmas.
  • Atbalsts ātrai TCP savienojumu atvēršanai (TCP FastOpen).
  • Iebūvēts Metalink formāta atbalsts.
  • Atbalsts internacionalizētiem domēna vārdiem (IDNA2008).
  • Iespēja vienlaikus strādāt ar vairākiem starpniekserveriem (viena straume tiks ielādēta caur vienu starpniekserveri, bet otra caur citu).
  • Iebūvēts atbalsts ziņu plūsmām Atom un RSS formātos (piemēram, saišu skenēšanai un lejupielādei). RSS/Atom datus var lejupielādēt no lokāla faila vai tīklā.
  • Atbalsts vietrāžu URL izvilkšanai no vietņu kartēm. Parsētāju pieejamība saišu iegūšanai no CSS un XML failiem.
  • Atbalsts direktīvai "iekļaut" konfigurācijas failos un iestatījumu sadale vairākos failos (/etc/wget/conf.d/*.conf).
  • Iebūvēts DNS vaicājumu kešatmiņas mehānisms.
  • Iespēja pārkodēt saturu, mainot dokumenta kodējumu.
  • Faila “robots.txt” uzskaite rekursīvo lejupielāžu laikā.
  • Uzticams rakstīšanas režīms ar fsync() zvanu pēc datu saglabāšanas.
  • Iespēja atsākt pārtrauktās TLS sesijas, kā arī kešatmiņā un failā saglabāt TLS sesijas parametrus.
  • Režīms "--input-file-" vietrāžu URL ielādei, kas nāk caur standarta ievades straumi.
  • Sīkfaila darbības jomas pārbaude, salīdzinot ar publiskā domēna sufiksu direktoriju (publisko sufiksu sarakstu), lai vienu no otras izolētu dažādas vietnes, kas tiek mitinātas vienā otrā līmeņa domēnā (piemēram, “a.github.io” un “b.github. io”).
  • Atbalsta ICEcast/SHOUTcast straumēšanas lejupielādi.

Avots: opennet.ru

Pievieno komentāru