Доступен тестовый выпуск GNU Wget 2, полностью переработанного варианта программы для автоматизации рекурсивной загрузки контента GNU Wget. GNU Wget 2 спроектирован и переписан с нуля и примечателен выносом базовой функциональности web-клиента в библиотеку libwget, которая может обособленно применяться в приложениях. Утилита поставляется под лицензией GPLv3+, а библиотека под LGPLv3+...Подробнее: https://www.opennet.ru/opennews/art.shtml?num=51437
Решили обогнать curl ?
Чем они оба лучше aria2?
Для консольной загрузки - ничем. А так libcurl - вне конкуренции.
aria2 слишком геморный синтаксис.. нужно явно указывать количество коннекшенов и т.д.можно конечно alias какой-нибудь сгородить но проще ведь wget url
>нужно явно указывать количество коннекшеновА в WGet не надо, потому что он это не умеет.
>>нужно явно указывать количество коннекшенов
> А в WGet не надо, потому что он это не умеет.прочитайте новость внимательно
>>>нужно явно указывать количество коннекшенов
>> А в WGet не надо, потому что он это не умеет.
> прочитайте новость внимательноДа. Вы тоже.
>>>>нужно явно указывать количество коннекшенов
>>> А в WGet не надо, потому что он это не умеет.
>> прочитайте новость внимательно
> Да. Вы тоже.Так точно, хер-стрелочник!
"распараллеливание запросов"
Да стреляй сколько угодно.
> Чем они оба лучше aria2?wget — тем, что полноценный веб-паук, а не просто менеджер закачек. curl — тем, что поддерживает большее число протоколов и больше фич в этих самых протоколов. Но чтобы просто качать прон, aria2, конечно, вне конкуренции.
Большее число протоколов, чем aria2?
> Большее число протоколов, чем aria2?Неужели написанное мной можно трактовать как-то иначе? К чему переспрашивать?
В конце концов, можешь просто сходить на оф. сайты и посчитать, на обоих поддерживаемые протоколы перечислены в самом начале главной страницы.
>wget — тем, что полноценный веб-паукАга, "полноценный"... в современном интернете скоро вообще ничего не будет работать без javascript и XHR, так что этот паук годится качать только статику. Более, менее полноценным пауком скорее всего можно назвать это: https://phantomjs.org/
> в современном интернете скоро вообще ничего не будет работать без javascript и XHRА XHR у вас телепатически работает, без HTTP?
И API для сторонних приложений тоже ожидаете использовать только в браузере?> Более, менее полноценным пауком скорее всего можно назвать это: https://phantomjs.org/
Он уже год как не развивается на фоне наличия встроенных headless-режимов в Chrome и Firefox.
>> в современном интернете скоро вообще ничего не будет работать без javascript и XHR
> А XHR у вас телепатически работает, без HTTP?Вы о чем ? Wget не умеет JS... как он XHR-ить то будет ? я про него родимого, про wget, о том что в современном интернете он не есть полноценный паук
> И API для сторонних приложений тоже ожидаете использовать только в браузере?
Причем здесь API??? Сказали что wget - полноценный паук, а он не может быть таковым, т.к. не бум-бум по JS-совски
>> Более, менее полноценным пауком скорее всего можно назвать это: https://phantomjs.org/
> Он уже год как не развивается на фоне наличия встроенных headless-режимов в
> Chrome и Firefox.Согласен, этих двух можно точно назвать лучшими пауками :)
но для них нужна тачка с десктопом, а phantomjs может взлететь на каком нибудь headless VPS где десктопом и не пахнет, хотя может что то в этом плане и поменялось, я не в курсе, давно не было нужды в таких задачках
> Согласен, этих двух можно точно назвать лучшими пауками :)Нельзя, потому что они на делают того, что должен делать паук — локальную копию сайта. Как и Phantomjs.
> но для них нужна тачка с десктопом, а phantomjs может взлететь на каком нибудь headless VPS где десктопом и не пахнет
Они оба уже давно умеют в headless, почему, собственно, phantomjs и загнулся.
https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Hea...
https://chromium.googlesource.com/chromium/src/+/lkgr/headle...
> Нельзя, потому что они на делают того, что должен делать паук —
> локальную копию сайта. Как и Phantomjs.Ну попробуйте скачать "весь" https://vulners.com/ сайт wget-том и раскажите здесь потом о результатах
>> но для них нужна тачка с десктопом, а phantomjs может взлететь на каком нибудь headless VPS где десктопом и не пахнет
> Они оба уже давно умеют в headless, почему, собственно, phantomjs и загнулся.Вы не путайте headless server (где вообще не установлен ни один десктор) с headless browser.
Ни лиса и не хромой не взлетят на headless server так как привязаны зависимостями к десктопной среде в отличии от phantomjs который скомпилирован статически.
> Ну попробуйте скачать "весь" https://vulners.com/ сайт wget-том и раскажите здесь потом о результатахSPA, дёргающие изощрённые серверные API, по определению не выкачиваются пауками.
> Ни лиса и не хромой не взлетят на headless server так как привязаны зависимостями к десктопной среде в отличии от phantomjs который скомпилирован статически.
Б-же, какая же у тебя каша в голове… А если phantomjs собрать не статически, а с шареными либами, он что, не взлетит? А если FF или хромого слинковать статикой? В конце концов, если поставить их из репов со всей помойкой зависимостей, как и делают в большинстве случаев, они что, всё равно не запустятся в headless? Или при установке libx* сервер сразу перестаёт быть headless?
>> Ну попробуйте скачать "весь" https://vulners.com/ сайт wget-том и раскажите здесь потом о результатах
> SPA, дёргающие изощрённые серверные API, по определению не выкачиваются пауками.я уже 3 раза(!!!) именно об этом и сказал (в чем вообще-то и был смысл поста, - о современном вебе и wget)
>> Ни лиса и не хромой не взлетят на headless server так как привязаны зависимостями к десктопной среде в отличии от phantomjs который скомпилирован статически.
> Б-же, какая же у тебя каша в голове… А если phantomjs собрать
> не статически, а с шареными либами, он что, не взлетит?А ну да, забыл, здесь же все как минимум Торвальдосы, Руссиновичи или Рутковски... И без каши в голове
> А если FF или хромого слинковать статикой? В конце концов, если поставить
> их из репов со всей помойкой зависимостей, как и делают в
> большинстве случаев, они что, всё равно не запустятся в headless? Или
> при установке libx* сервер сразу перестаёт быть headless?На headless server притащить "помойку зависимостей" ???
И где это интересно так "делают в большинстве(!!!) случаев"
Ты вообще пробовал компилить хотя бы лису статически ?
> я уже 3 раза(!!!) именно об этом и сказал (в чем вообще-то и был смысл поста, - о современном вебе и wget)Ты сказал, что wget не является полноценным пауком. Я же сказал, что то, чего ты хочешь, не может сделать вообще ни один паук по определению, так что аргумент про неполноценность wget не канает.
> На headless server притащить "помойку зависимостей" ???
И где это интересно так "делают в большинстве(!!!) случаев"
Да, взять и притащить. У тебя что, на сервере пол-гига места не найдётся? Делают так везде, где надо работать. Плюются, но делают, потому что такой объём дискового пространства нынче стоит копейки, о которых и говорить смешно, а лежащие мёртвым грузом зависимости работу не тормозят.> Ты вообще пробовал компилить хотя бы лису статически ?
Нет, я берегу своё психическое здоровье, так что уже лет 7–8 не компилял её ни в каком виде. Что никоим образом не означает, что такое в принципе невозможно.
> Ты сказал, что wget не является полноценным пауком. Я же сказал, что
> то, чего ты хочешь, не может сделать вообще ни один паук
> по определению, так что аргумент про неполноценность wget не канает.Расскажите эту страшилку гуглу, который давно умеет crawl-ать сайты на чистом JS используя headless chromium (https://web.dev/javascript-and-google-search-io-2019/)
>> На headless server притащить "помойку зависимостей" ???
> И где это интересно так "делают в большинстве(!!!) случаев"
> Да, взять и притащить. У тебя что, на сервере пол-гига места не
> найдётся? Делают так везде, где надо работать. Плюются, но делают, потому
> что такой объём дискового пространства нынче стоит копейки, о которых и
> говорить смешно, а лежащие мёртвым грузом зависимости работу не тормозят.Может и не тормозят, но чем больше всякого умнa, тем выше вектор компроментирования.
>> Ты вообще пробовал компилить хотя бы лису статически ?
> Нет, я берегу своё психическое здоровье, так что уже лет 7–8 не
> компилял её ни в каком виде. Что никоим образом не означает,
> что такое в принципе невозможно.А мы пробовали и выяснилось что --enable-static, это далеко не то, что они подразумевают
Гугл не выкачивает сайты, а индексирует. Никаким хромиумом выкачать такой сайт ты не сможешь
Обычные качалки порой бывают лучше чем, консольная торрент-качалка(Я так aria2 называю ибо для чего-либо другого не годится, пока ЭрПэКа с клиентом для него не запустишь.).
Не умея в HTTPS они токо свою тень могут обогнать.
С какого перепуга wget вдруг разучилась в HTTPS?
Под Windows помимо полноценных билдов ходят билды без LibSSL. Видимо, VINRARUS других не видел :)
Лимита дорволась до технологий...
Что? curl библиотека, а wget клиент.
>> примечателен выносом базовой функциональности web-клиента в библиотеку libwget, которая может обособленно применяться в приложениях
libcurl — библиотека, а curl — клиент
С таким номером версии они еще долго обгонять будут
Бгггг )))
Тонко. Зачот.
Это же легко поправимо ;)
У анонимов теплое обгоняет мягкое.
Свобода соревнований!! )))
По ключам тулза совместима, я так понимаю?
> полностью переработанногоА аутентификацию через libgss (kerberos) так и не завезли;
> примечателен выносом базовой функциональности web-клиента в библиотеку libwgetЛучше бы libcurl взяли.
У курла xренотень с лицензией
https://curl.haxx.se/docs/copyright.html
Что не так-то? MIT с дополнительным clause, запрещающим рекламу типа "наш софт использует libcurl, поэтому он круче всех работает с интернетом!!!1"
Столлман не одобряет.
https://gnuwget.gitlab.io/wget2/reference/modules.htmlА чё, для C так и не завезли никакой системы документирования кода лучше, чем doxygen? То есть, если я хочу за пару минут обозреть API, чтобы примерно представить себе сходства и отличия с libcurl, то эта задача нерешаема, так? Типа хочешь сравнить, значит надо как минимум полчаса читать сорцы, я правильно понял?
Если доксижэн не нравится может напишешь свою реализацию и лучше чем та что существует? (Я уверен что Ты завоюешь оупэнсорсный рынок своей разработкой. Без шуток.)
Тебе чисто контракт вытащить нужно, то можно ctags взять и сравнить,
а вообще нормальные парни уже сделали парсер AST для C/C++ можно целиком дерево разрисовать если есть желание время и т.д. Для отладки не помню но как-то в шлаге можно было флажком почитать все дерево с расскраской по типам =)
После выхода финальной версии wget2 он заменит wget1 или обе версии будут поддерживать?
По-моему, wget2 имеет такое же отношение к wget как mpv к mplayer. Хотя название намекает, что всё же более тесное.
Мало ли что по твоему
Официально рассылкой является https://savannah.gnu.org/mail/?group=wget
То есть это именно что вторая версия wget от тех же самых разработчиков, с теми же рассылками, новая версия, а не левая фигня.
> как mpv к mplayermplayer2 был бы лучшим примером :)
GRUB 1 и 2 делаются одними людьми, но не имеют ничего общего кроме назначения. Опыт работы с одним только мешает осваивать второй. И это тоже проект GNU.
Так что не показатель.
X Server и Wayland тоже одними, но ничего общего... А что должно быть общее? Обеспечение графики в данном случае.
> GRUB 1 и 2 делаются одними людьмине "делаются", а "на от...сь поддерживался" первый, чтобы всех силком загнать на невменяемый второй.
_Делался_ grub1 одним-единственным человеком (которого достало что гнутый хурд даже загрузить нормально нечем, остальные детали там были потому что надо ж было и работать, а не только с хурдом играть на той системе). К сожалению, он, кажется, сделался вечноживой.
Полагаю, с wget1 будет ровно то же самое - через пару лет окончательно доломают.
ну и хрен в общем-то с ними, все уже давно свалили на curl.
Заменит, вроде.
Выглядит вкусно, но
посмотрел на build Requirements и понял что не судьба, ибо что то типа AIX/HPUX - замахаешься собирать...
А что лучше для закачки порнухи? curl или wget?
curl с параметрами -OL
Qbittorrent
qbittorrent
internet explorer
при том IE лидер в этих услугах - даже искать не надо, нужно только пользоваться, порнуха сама найдется, установиться, и будет непринужденно предлагать её посмотреть)
> GNU Wget 2 спроектирован и переписан с нуля и примечателен выносом базовой функциональности web-клиента в библиотеку libwget, которая может обособленно применяться в приложениях
> которая может обособленно применяться в приложенияхДля Linux выпустят FlashGet, ReGet и Download Master?
Ага, и под GPLv3 ;)
одно не понятно - почему не на rust или go
На, обмазывайся:
https://github.com/laher/wget-go
https://github.com/rminnich/u-root/tree/master/cmds/wget
https://github.com/jaytarang92/goget
А растоманы чё-то пока не осилили:
https://docs.rs/wget/
Видимо, не хватает нескучной стандартной библиотечки, которая всё уже умеет, и без которой придётся писать больше сотни строк кода.
Ну, если искать через поиск, то в наличии:
https://github.com/otavio/rsget
https://github.com/lukaszwawrzyk/rust-wget
> https://github.com/laher/wget-go
Not plannedftp protocol
--recursive (for archiving websites) and --warc- options
https://github.com/rminnich/u-root/tree/master/cmds/wget
// Wget reads one file from a url and writes to stdout.
Крутые хелло^W аналоги wget, да.> Видимо, не хватает нескучной стандартной библиотечки, которая всё уже умеет, и без
> которой придётся писать больше сотни строк кода.Зато растоманы осилили _реально_ быстрый аналог grep.
https://github.com/BurntSushi/ripgrep
До которого гопарям - как до Китая в позе зенитной пушки
https://blog.burntsushi.net/ripgrep/#literal-optimizations
> Крутые хелло^W аналоги wget, да.Ну дык говорю же: что стандартная библиотечка умеет, то и наваяли. Ты думал, они в протоколы сумеют или в парсинг HTML?
> Зато растоманы осилили _реально_ быстрый аналог grep.
Правильно, у них же в библиотечке быстрый движок регулярок, чего бы с ним десяток строк кода не накидать?
Потому, что Светлейший их не одобрил.
Потому что хоть что-то должно собираться и работать везде, где есть сишный компилятор, а не как эти ваши наркоманские языки?
Да они вообще-то везде и собираются, ну кроме ель-бруса. Но то, что в МЦСТ не сделали нормального компилятора, — это проблема МЦСТ.
Так это отдельная версия программы или обновление? Они будут развиваться параллельно (но в конечном итоге 2я заменит 1ю в дистрибутивах, как Python 2 и 3 в свое время)?
Параллельно, пока 2 не выйдет из беты.
Так и не ответили, совместим ли с предыдущей версией по ключам командной строки? А заодно конфигам.
Полностью совместим. Но не поддерживает FTP.
что? поддерживает кучу хлама, но нет фтп?
ну тогда пусть хипсторы им пользуются
Он и в фидо зайти с него нельзя.
Не врите для таких есть давно wfido.ru шлюз. Все там можно.
А вот нужно ли?
Уточните в новости, что FTP не поддерживается.
FTO Стал не нужен сразу после появления HTTP.
FTP*
У меня как у майнтейнера wget в альте не очень хорошее впечатление от взявшихся тащить его дальше -- первым делом они, взявшись, посадили в него стопку новых дырок: http://packages.altlinux.org/ru/sisyphus/srpms/wget/changelogsДаже не знаю, сколько головняка принесёт эта новость...
Фич
Даже не знал что wget не поддержиает HTTP/2.wget -S --spider https://gricargo.com
Upgrade: h2
Connection: Upgrade, Keep-AliveА зачем Apache просит перейти клиента на HTTP/2, зная что он в него не умеет?
Это нормально?https://bz.apache.org/bugzilla/show_bug.cgi?id=59311
Видимо нет.
А откуда бы апачу знать? Апач просит перейти, когда клиент не переходит апач говорит «ну раз так» и работает по HTTP/1.1(1.0, 0.9)
Веб-сервер запрашивает повышение протокола, что бы увидеть умеют с той стороны или нет, если нет, то работает с чем пришли
> А откуда бы апачу знать? Апач просит перейти, когда клиент не переходит
> апач говорит «ну раз так» и работает по HTTP/1.1(1.0, 0.9)
> Веб-сервер запрашивает повышение протокола, что бы увидеть умеют с той стороны или
> нет, если нет, то работает с чем пришлиПо поводу того что сервер не знает - согласен!
Мне казалось клиент всегда работает с максимально возможным протоколом, и если он указывает протокол 1.1 то он или не умеет в 2 или не хочет и бесполезно серверу просить его повысить.
Или я ошибаюсь?
Насколько я помню клиент приходит с чем может, потом сервер ему предлагает повысить протокол, если может это сам. То есть у тебя клиент умеющий в http/2 может придти с http/1.1, ему сервер отвечает «А может http/2?», если клиент умеет, то клиент говорит «А чо бы нет?» и дальше разговор идет по http/2, если ответа не последовало, то говорим на том протоколе с которым клиент пришел.
Благодарю за ответ!
Да не за что. Это логичное поведение и правильно что именно так сделали.
Собственно во время внедрения h2 это было вообще логично, что клиент мог в h2, но шел с h1.1, для совместимости, а ему уже сервер задавал вопрос и протокол менялся, в противном случае пришлось бы пытаться говорить по h2, получать отлуп и понижать протокол, что не очень разумно.
Собственно сейчас мы имеем ситуацию, что есть клиенты держащие QUIC(будущий h3), если клиенты держащие h2, есть максимум h1.1. При таком раскладе сервер умеющий во все должен принимать коннект по h1.1 и дополнительно спрашивать у клиента про поддержку quic и h2, если она есть, то переходить на один из них.
> переведён на многопоточную архитектуруНу все нагрузку уже не сделать будет. Ну вот зачем?
Какую тебе нагрузку?
Для нагрузочных тестов есть куча инструментов от примитивного ab и siege, до всяческих монстров.
Зачем, если есть (завис на пару минут)…
httest
httperf
jmeter
polygraph
tsung
wbox
wrk
(индикатор прогресса продолжает крутиться)
Это все детский сад, а не инструменты.
О да, то ли дело нагрузочное тестирование wget-ом!
очередная путаница вида gpg\gpg2