Страница 111 / 118

Wget: [Назад] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 [Вперед]

GaDiNa



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
[ UNIX Shell ] || [ Рекурсивная загрузка веб-сайтов ] — родительские ветки.
 
GNU Wget

GNU Wget — это свободная неинтерактивная утилита для скачивания файлов по HTTP, HTTPS, FTP и FTPS (и только), обладающая самым базовым функционалом загрузки одиночных файлов и рекурсивной загрузки сайтов (HTTP) и директорий (FTP).
 

| Офсайт | Википедия | Фрешмит | Опен-хаб (бывш. Охлох) | Мануал | Ман | Ман (русск., устар.) | --help (русск.) |

 
Где взять.
Под GNU — уже стоит. Под FreeBSD — есть в портах. Под [Mac] OS X — собрать ванильный.  
Под Windows есть варианты: 0) Cygwin,  1) GNUWin32 (учитывайте зависимости), 2) Wget + OpenSSL by GetGnuWin32, 3) by Bart Puype  4) by osspack32, 5) by Alex_Piggy, 6) by Jernej Simoncc (32 и 64 бит отдельные пакеты).
 
Литература.
Popkov. Параметры программы wget
В. А. Петров. Wget — насос для Интернета
 
FAQ
 
Q: Можно ли простым перебором загрузить страницы (допустим) с первой по сотую, если их адреса:  
http://example.org/index?page=1
http://example.org/index?page=2
...
http://example.org/index?page=100
A: Вэ-гет не умеет делать инкрементальный перебор, поскольку это умеет делать любая командная оболочка. На Баше это делается так:
$ wget -E "http://example.org/index?page="{1..100}
Еще раз отметьте, {1..100} — это синтаксическая конструкция Баша, а не Вэ-гета. Эквивалентной этой будет команда:
$ for i in {1..100}; do wget -E "http://example.org/index?page=$i"; done
Или для cmd.exe:
for /l %i in (1,1,100) do wget -E "http://example.org/index?page=%i"
 
Q: А как собственно сайт целиком-то загрузить?
A: $ wget -mpEk "http://example.org"
Это, наверное, самый ходовой набор ключей, но вам, может быть, более подойдут другие. Что значит каждый — легко узнать в мане.
 
Q: Я хочу загрузить с сайта, требующего авторизации. Что делать?
A: Проще всего кинуть куда-нибудь файл с нужными (но лишние не помешают) куками в нетскэйповском формате, затем воспользоваться ключом --load-cookies.
$ wget --load-cookies cookies.txt бла-бла # файл cookies.txt в текущей директории
У Файрфокса куки в требуемом виде можно получить, воспользовавшись расширением «Export Cookies»; у Хрома — «Cookie.txt export»
 
Q: Не-ASCII символы сохраняются в именах файлов как %D0%A5%D1%83%D0%B9 (или того хуже), хотя локаль юникодная.
A: Укажите ключ --restrict-file-names=nocontrol,unix или --restrict-file-names=nocontrol,windows соответственно.
Если у вас Windows и локаль не юникодная — используйте вариант от Alex_Piggy с ключом --local-filesystem-encoding=ENCODING, где ENCODING — имя кодировки локали в терминах iconv. Текущую локаль cmd.exe можно проверить при помощи команды chcp. Для русской кириллицы в Windows обычно используется CP866.
 
Q: Известно, что можно приказать Вэ-гету обновить ранее загруженный файл, если на сервере новее или иного размера (ключ --timestamping, он же -N). Можно приказать учитывать только дату, но не размер (--timestamping --ignore-length). А можно ли учитывать только размер, но не дату?
A: При помощи одного только Wgetа — нет.  Возможна обработка получаемых заголовков файла при помощи средств командной оболочки. Пример для cmd.exe.
 
Q: Можно ли приказать Вэ-гету докачать файл, но только если он не изменился.
A: Нет, нельзя. Сочетание ключей -cN (--continue --timestamping), как можно было бы предположить, нужного эффекта не даст — «докачает» даже если файл изменился — получите в итоге мусор.
 
Q: Можно ли при рекурсивной загрузке ограничится только ссылками, содержащими параметр lang=ru, т.е. грузить:
http://example.org/index?lang=ru
http://example.org/page?id=1001&lang=ru
http://example.org/file?id=60&lang=ru&format=dvi
и не грузить:
http://example.org/index?lang=en
http://example.org/about?lang=fr
и т.д.
A: Для версий < 1.14 нет такой возможности.  
Общий вид URI: <протокол>://<логин>:<пароль>@<хост>:<порт>/<путь>?<параметры>#<якорь>. Так вот ключи -I (--include-directories) и -X (--exclude-directories) относятся только к пути, но не к параметрам.
В версиях > 1.14 возможно при использовании ключей --accept-regex / --reject-regex. Пример: --reject-regex "lang=[^r][^u]"
 
Q: Можно ли средствами Вэ-гета ограничить перечень загружаемых файлов по дате модификации (новее чем, старше чем)?
A: Нет такой возможности.
 
Q: Можно ли при рекурсивной или множественной загрузке произвольно задать целевые пути и/или имена файлов на основе пути/имени по-умолчанию (применить транслитерацию, отбросить хвостовую часть) или хотя бы независимо (сгенерировать случайно или по счетчику)?
A: Нет.
 
Q: То — нельзя, это — невозможно. Почему все так плохо?
A: Потому что Вэ-гет на настоящий момент — базовая программа, предоставляющая только самый базовый функционал. Если вы уперлись в потолок ее возможностей, просто смените ее на другой инструмент. Из неинтерактивных свободных программ наиболее функциональными будут:
aria2c — для загрузки одиночных файлов по HTTP(S), FTP, бит-торренту;
httrack — для рекурсивной загрузки («зеркалирования») веб-сайтов;
lftp — для работы по FTP, FTPS, SFTP, FISH, а также с листингами, отдаваемыми по HTTP(S) (пример).
curl — для работы с одиночными файлам по HTTP(S), FTP(S) и многими другими протоколами на более низком уровне.
 
Разное.
GUI для Wgetа
 

Смело правьте и дополняйте шапку, однако не забывайте отписываться об исправлениях и сохранять исходный вариант под #.

Всего записей: 1503 | Зарегистр. 17-06-2003 | Отправлено: 12:39 08-11-2003 | Исправлено: VictorVG2, 22:57 06-01-2016
D1D1D1D

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет!
 
Есть ли возможность для VK грузить всю простыню (т.е. все страницы, подгружающиеся по мере прокрутки)? —
 
http://vk.com/occultlibrary

Всего записей: 392 | Зарегистр. 04-04-2010 | Отправлено: 19:29 12-10-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D, можно, конечно, только не wgetом.

----------
Спроси, где спросить!

Всего записей: 8468 | Зарегистр. 11-05-2005 | Отправлено: 20:20 12-10-2015
D1D1D1D

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ASE_DAG, а мне как раз не принципиально)) Чем же тогда, скажите на милость?))

Всего записей: 392 | Зарегистр. 04-04-2010 | Отправлено: 20:23 12-10-2015
Victor_VG

Редактировать | Цитировать | Сообщить модератору
D1D1D1D
 
На деле можно использовать wget нттр://vk.com/occultlibrary -r -p ... , но лучше использовать специализированный софт типа метапродукта чтобы он скопировал только нужное. Или свалится несколько десятков терабайт мусора.

Отправлено: 22:23 12-10-2015
D1D1D1D

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Victor_VG а я метапродуктом тоже пробовал: скачалась только первая страница, а на последующие вместо ссылок значится wall.showMore(10);

Всего записей: 392 | Зарегистр. 04-04-2010 | Отправлено: 22:35 12-10-2015
Victor_VG

Редактировать | Цитировать | Сообщить модератору
D1D1D1D
 
А если чуток подстроить? Я когда мне было надо вытащить маны GIMP сделал это быстро и просто. Или вы ждёте что за вас кто решит вашу задачу? А оно кому в таком виде надо?

Отправлено: 01:48 13-10-2015
D1D1D1D

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Victor_VG
 
Что вы, Виктор: решение задачи "за меня" мне ненадобно — достаточно направления, совета)) Т.е. знать бы, что "подстроить")) Достать-то страницы можно, но нужен был пример программного извлечения, а тут и с метапродуктом не пошло))

Всего записей: 392 | Зарегистр. 04-04-2010 | Отправлено: 03:17 13-10-2015
Victor_VG

Редактировать | Цитировать | Сообщить модератору
D1D1D1D
 
Нужен OE ентерпрайз + TextPipe Pro, там настроить верхний адрес, глубину просмотра и правила конвертации линков. Пнуть. Минут на пять работы, а сколько удовольствия.

Отправлено: 03:55 13-10-2015
Alex_Piggy

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Доброе время, D1D1D1D
При прокрутке подгружается al_wall.php, которому в POST передается offset. Посмотрите средствами разработчика любого браузера. Я смотрел вчера в Opera Dragonfly. Признак конца стены не смотрел, но должно быть отсутствие в скачанном ссылки на скрипт (то самое wall.showMore(10)).

Всего записей: 1537 | Зарегистр. 07-08-2002 | Отправлено: 05:11 13-10-2015 | Исправлено: Alex_Piggy, 05:12 13-10-2015
sikemo

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
надо вытащить маны GIMP

поделитесь?

Всего записей: 921 | Зарегистр. 27-11-2008 | Отправлено: 12:01 13-10-2015
chAlx

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
D1D1D1D:

Цитата:
Чем же тогда, скажите на милость?

Я когда-то Проксомитроном страницы разворачивал в одну (обычные, без скрипта). Дико криво, но работало... На VK проще браузерный скрипт запустить, который "нажмёт" кнопку "далее" (вызовет showMore()).
 
А если по-правильному, то надо через их API делать.

Всего записей: 1490 | Зарегистр. 19-03-2003 | Отправлено: 12:24 13-10-2015
D1D1D1D

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Для wget'a нащупал такую методу — нужен следующий фрагмент списка, с шагом в "10" (причем для страниц мобильной версии, в которой посты удобно развёрнуты):
 

Код:
 
http://m.vk.com/occultlibrary?offset=5&own=0#posts
http://m.vk.com/occultlibrary?offset=15&own=0#posts
http://m.vk.com/occultlibrary?offset=25&own=0#posts
http://m.vk.com/occultlibrary?offset=35&own=0#posts
http://m.vk.com/occultlibrary?offset=45&own=0#posts
http://m.vk.com/occultlibrary?offset=55&own=0#posts
http://m.vk.com/occultlibrary?offset=65&own=0#posts
http://m.vk.com/occultlibrary?offset=75&own=0#posts
http://m.vk.com/occultlibrary?offset=85&own=0#posts
http://m.vk.com/occultlibrary?offset=95&own=0#posts
и т.д.
 

 
Вот почему-то в OE не работает: http://m.vk.com/occultlibrary?offset={:0..95|10}&own=0#posts

Всего записей: 392 | Зарегистр. 04-04-2010 | Отправлено: 15:40 13-10-2015
Vitusha73

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте уважаемые профи.Сильно не пинайте.
Хотел бы узнать вот есть на форумах скачиватель ключей
работает как то через wget.хотел бы узнать как добавить туда
свою ссылку и что бы она срабатывала я попробовал но почему то ключ
не качается,в созданой мной папке в директории с программой появляется
файл ключа например softcam.key но он пустой 0 байт.
А по другим ссылкам всё скачивается.Как мне добвить ссылку не могли бы подсказать?
Заранее спасибо.

Всего записей: 3 | Зарегистр. 14-11-2015 | Отправлено: 00:01 15-11-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vitusha73, у вас ссылка потерялась.

----------
Спроси, где спросить!

Всего записей: 8468 | Зарегистр. 11-05-2005 | Отправлено: 03:29 15-11-2015 | Исправлено: ASE_DAG, 03:30 15-11-2015
Vitusha73

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
у вас ссылка потерялась

 
В смысле потерялась?
http://onlinecolor.cu.cc/sat/openbox-softcam.key
Вот она и с  браузера  сработает можете проверить качается ключ
а вот когда по батнику кликаю не качается ключ качается просто пустой файл.
 
 
Добавлено:
Вообще не пойму как редактировать сам исполняемый файл wget
ведь он называется wget.exe если я правильно понимаю,
а например лежащий с ним в одной папке update_keys.bat это текстовый  
и его можно редактировать то есть добавить ту да ссылки я так и добавил
с помощью нотепад  блокнота но  не срабатывает ссылка почему то.Как правильно реализовать это?

Всего записей: 3 | Зарегистр. 14-11-2015 | Отправлено: 07:53 15-11-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vitusha73> В смысле потерялась?
 
В прямом. Подымите глаза и увидите, что в вашем первом письме, как оно здесь отображается, этой ссылки не видно.
 
> качается просто пустой файл
 
Не наблюдаю такого, наблюдаю отлуп по 403-й. Они запрещают доступ тем, кто представляется wgetом — обычное дело. Представьтесь веб-обозревателем:
 
$ wget --user-agent "Mozilla/5.0" "http://onlinecolor.cu.cc/sat/openbox-softcam.key"
 
> Вообще не пойму как редактировать сам исполняемый файл wget
 
Вэ-гет написан на Си, а это компилируемый язык, а не интерпретируемый. Но это свободная программа, так что смело загружайте исходные тексты и правьте, если так хочется. Я правда не понял, зачем.

----------
Спроси, где спросить!

Всего записей: 8468 | Зарегистр. 11-05-2005 | Отправлено: 08:29 15-11-2015 | Исправлено: ASE_DAG, 08:33 15-11-2015
mithridat1



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Выпуск GNU wget 1.17 с поддержкой FTPS и HSTS

Всего записей: 3469 | Зарегистр. 05-01-2006 | Отправлено: 20:26 15-11-2015
Vitusha73

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ASE_DAG
Всё равно не получается что я не так делаю?

Всего записей: 3 | Зарегистр. 14-11-2015 | Отправлено: 22:49 15-11-2015
ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vitusha73, да даже и не знаю, что вы [не так] делаете; попробуйте обратиться к вашему участковому телепату.

----------
Спроси, где спросить!

Всего записей: 8468 | Зарегистр. 11-05-2005 | Отправлено: 23:29 15-11-2015
mithridat1



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Имеются ссылки типа  
http://server.com/filename.ext?param1=bla-bla&param2=bla-bla&param3=bla-bla...
 
Как средствами wget отбросить параметры ссылки после "?" чтобы файл сохранялся в виде filename.ext ?

Всего записей: 3469 | Зарегистр. 05-01-2006 | Отправлено: 15:10 18-11-2015 | Исправлено: mithridat1, 18:27 18-11-2015
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118

Компьютерный форум Ru.Board » Компьютеры » Программы » Wget

Сохранено: 09.06.2016 19:48:31 (c) xForumSaver