![]() |
Wget - (GNU Wget) свободная неинтерактивная консольная файлокачалка
Т.к такой темы не существует, предлагаю проблемы и вопросы связаные с программой WGet обсуждать здесь.
И первый вопрос: каким параметром задается каталог куда скачивается файл? Вроде все просмотрел, а толком ничего не нашел. |
SlavUser если не возражаешь, допишу пару строчек.
Скачать программу и некоторые к ней добавки, GUI например ... Можно здесь: http://www.imho.ws/showthread.php?t=44390 В шапке там есть несколько хороших ссылок на описание проги. |
SlavUser
wget -i http://ya.ru/logo.gif -P c:\downloads\ |
SlavUser
пример:
wget -P %HOMEDRIVE%\Downloads\ а если без GUI создай бат файл в папке с прогамой и туда пиши например: ------------------------------------------------------- @echo off set DOWNDIR=%HOMEDRIVE%\Downloads\%DATE%\ wget -P %DOWNDIR% --dot-style=binary -S -i links.txt rem а ето уже не обезательно if errorlevel 1 goto END :OPENDIR start %DOWNDIR% pause :END Exit ------------------------------------------------------- в файле links.txt добавь ссылки для скачивания и запусти бат файл |
а можно ли для wget скачать GUI ?
|
Forson
Цитата:
wget - штука замечательная, из всех downloader'ов самая лучшая (имхо, во всяком случае я их перепробовал что-то около полутора десятков). Я делаю очень просто. Засовываю линки в файл, а потом запускаю специальный батник: Код:
@echo off З.Ы. Всякие дополнительные параметры (фоновый запуск, формат лога и т.п.) берутся из файла wgetrc. Надо только описать переменную среды WGETRC и указать в ней полное имя этого файла. |
Есть такой вопрос: положим я запустил несколько потоков wget и один из них мне нужно остановить; это можно сделать в диспетчере задач, но для этого нужно знать PID. Так вот, как узнать этот PID?
В линухе это просто, пишем wget -b bla-bla-bla > wget.pid и в файл wget.pid записывается строкаContinue in background with PID = ### В винде wget подобной информации не выдает. :idontnow: Или я ее просто не сумел найти. :(З.Ы. Возможно, это можно решить, установив гуй (GUI), но я просто не хочу ставить его - считаю это лишним. Хотя, возможно, если никто не подскажет как решить мою проблему, придется ставить... З.З.Ы. wget у меня версии 1.9.1 |
wget.exe -b http://lalala/la
Continuing in background, pid 2372. Output will be written to `wget-log'. |
albo
Намекни, что за версия. Из всего, что ты написал, у меня wget выдает только первые три слова первой строки. :( |
Ghost
А ты nnCron не пользуешься? Он умеет отлавливать PID. Сделать задачу вроде: #( write_wget_PID WatchProc: "wget.exe" Action: FILE-APPEND: "D:\wget.pid" "%hh%:%mm%:%ss% start wget PID = %WATCH-PROC-ID%%crlf%" )# и nnCron будет записывать точное время старта и PID каждого процесса wget. А wget в свой лог тоже пишет точное время старта. |
Происходит что-то странное: wget качает медленнее чем FlashGet. В чем может быть причина?
Спасибо. |
Цитата:
А ты их (wget и FlashGet) не одновременно запускал случаем? А то FlashGet в состоянии траффик у кого угодно отобрать :) |
Нет. Я их по очереди запускал.
А use_proxy = off не помогло. -OFFTOP- Как включить HTML код? А то я никак не могу цитату в ответ вставить. Спасибо. |
Цитата:
Для медленных серверов это важно. Настрой FlashGet на 1 поток (в свойствах закачки) и сравни. |
решил тут прикрутить Вгет к Опере, может кому надо:
вставлять в [Link Popup Menu] Item, "Download with Wget" = Copy link & Execute program, "D:\WGET\wget.exe","%C -P D:\Downloads\ -c" +можно добавить своих кучу параметров. +небольшое дополнение "Скачать выделенный линк", добавить в [Hotclick Popup Menu] Item, "Скачать выделленный линк" = Copy & Execute program, "D:\WGET\wget.exe","%C -P D:\Download\ -c" или Item, "Скачать выделленный линк вариант 2" = Execute program, "D:\WGET\wget.exe","%t -P D:\Download\ -c" принципиальной разницы нету. |
решил продолжить тему только уже с сохранение мстраницы
добавляем в меню.ini [Document Popup Menu] Submenu, "save page with Wget", WGET menu и в самый конец файла [WGET Menu] Item, "сохранить страницу при помощи Wget" = Execute program, "D:\WGET\wget.exe","-m -np %u -P D:\Download\Web\" Item, "сохранить страницу при помощи Wget на 1 уровень" = Execute program, "D:\WGET\wget.exe","-r -l1 %u -P D:\Download\Web\" Item, "возобновить сохранение" = Execute program, "D:\WGET\wget.exe","-nc -r %u -P D:\Download\Web\" если кто знает интересные ключи или предложения, выкладываем. |
Так а как сделать так, что бы Wget качал в х потоков?
|
Цитата:
сам искал, в командах упоминаний нет. а может полхо искал. |
Crime
Искал, хорошо. WGet, во всяком случае - виндовый, действительно может качать файл только в один поток: один файл - один поток, т.е. разбивать файлы на части (как это делают FlashGet, GetRight и иже с ними) он не может. Если же имелось в виду: x файлов - x потоков, то просто нужно запускать сразу несколько процессов WGet'а и всё. |
Цитата:
|
Попробуй качать, скажем, не *.mp3, а *.m&p&3, т.е. ручками менять имя файла - с большинства HTTP-серверов таким образом можно скачать файлы, наплевав на запрет прокси. Я так уже давно музыку тяну. Насчет того, чтобы WGet обходил запрет прокси, т.е. фактически подключался к инету не через проксю, а напрямую, то в твоем случае это скорее всего невозможно, так же как и у меня, во всяком случае, у себя я такого не обнаружил. :(
|
А никто не сталкивался со скачиванием файлов, в названии которых есть квадратные скобки? Например
_ftp://195.135.232.80/Books/design/Learn.HTML4.In.a.Weekend.[by.KiN_www.netz.ru]_11,02.MB.rar _ftp://195.135.232.80/Books/os/The.XP.Files.Hidden.Tools.[by.KiN_www.netz.ru]_3,62.MB.rar У меня почему то wget споткнулся на них, все другие файлы с этого фтп-шника тянет нормально. Я пробовал заменить квадратные скобки на %5B и %5D (в батниках %%5D), все равно результат один - в логе пишет: No matches on pattern `Learn.HTML4.In.a.Weekend.[by.KiN_www.netz.ru]_11,02.MB.rar'. |
Premium
_ftp://195.135.232.80/Books/design/Learn.HTML4.In.a.Weekend.?by.KiN_www.netz.ru?_11,02.MB.rar А так? :) |
albo Спасибо большое :yees: , сам бы не догадался про вопросительный знак, привык при случае спорные места менять на проценты-hex, вроде вместо пробела - %20
|
А вот подскажите, можно ли в WGet задать ограничение на размер скачиваемых файлов? Ну скажем чтоб когда сайт тянешь, он файлы более мегабайта не качал?
|
Ну что же все молчат??? Нельзя? Или не знает никто?
|
iaroslavk
Низя. Набери wget --help и увидишь, что там нет такой опции. :( |
Очень жаль. Если б было можно - wget был бы действительно вне конкуренции...
|
Цитата:
|
Вобщем так: нужно научить wget выковыривать имена файлов из Content-header'а. А именно, пример... Есть такой сайт - karaoke.ru и там куча песен. Я хочу их скопом стянуть. Для чего делаю файлик со ссылками и заряжаю его в wget. Все бы ничего, но этот уродец по ссылке httр://www.karaoke.ru/song/1/download/ вытягивает файл index.html, хотя заголовок HTTP-ответа сервера содержит настоящее имя файла, т.е. a_studio=belaja_reka.kar. Вот что он (уродец) пишет в логе:
Код:
--15:52:59-- http://www.karaoke.ru/song/1/download/ |
Цитата:
|
Иногда помогает сменить строку user-agent wget на другую, чтобы "обмануть" веб-сервер. Я так делал не раз, и добивался результата.
|
Цитата:
Попробуй написать что-то вроде Код:
wget.exe http://site.ru/ -Yon --proxy-user=USER --proxy-passwd=PASSWORD Напиши тут о результатах. Это должно сработать. По такому принципу я забираю базы KAV5 с FTP серверов (сам KAV5 почему-то ни в какую не хочет это делать, хотя все опции там вроде есть). |
Цитата:
А насчет KAV5 - сама Лаборатория Касперского не рекомендует использовать wget для закачки обновлений :) т.к. он не проверяет контрольные суммы. |
Oleg+
Цитата:
|
С опцией wget --mirror может возникнуть проблема, если длина файла на ftp сервере равна длине файла на диске...
|
Можно ли WGET'ом выкачать закрытую область сайта при наличии логина и пароля?
|
Цитата:
HTTP options: --http-user=USER использовать имя юзера USER. --http-passwd=PASS использовать пароль PASS. |
Alex8, спасибо, я это читал и уже даже пробовал, но там немного не такая аутентификация. Там java смотрит в БД и выдаёт то, что доступно данному пользователю.
пробовал так: wget -mr http://www.mysite.ru?login=blabla%26password=blabla тоже ничего не качает кроме странички логина, хотя в IE логинится и показывает закрытую область. |
а логин через куки?
попробуй, может: --load-cookies=FILE load cookies from FILE before session. --save-cookies=FILE save cookies to FILE after session. типа, сохранить сначала в файл, посмотреть, что там остаётся. если надо - подправить, или скопировать куку из IE. и подгрузить для полного сеанса скачивания. а, вот ещё есть --referer=URL include `Referer: URL' header in HTTP request. может, этот сайт проверяет реферера? или -U, --user-agent=AGENT identify as AGENT instead of Wget/VERSION. может, ожидается определённый браузер? и еще вариант для дебага: -s, --save-headers save the HTTP headers to file. |
Часовой пояс GMT +4, время: 13:20. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.