sotvm
@sotvm
Умный поймёт, а дураку и так всё равно.

Скачать через прокси используя wget?

не понимаю как скачать видео через через проксю используя wget ?
пробовал добавить параметр (заменить строку)
wget --proxy "145.249.106.107:8118" -U "$ua" -c -i - 2>&1
в скрипте не работает функция
filmDownload() {
    sed '/^#/d' "$playlist_path"/"$1".m3u |\
    wget -U "$ua" -c -i - 2>&1 |\
    sed -ur 's/.+\ +([0-9]+)%.*/\1/' |\
    zenity --progress --title "Загрузка файла..." --text "$1"
    }

решил "проверить руками" , из файла .m3u вытащил ссылку ,
открываю в vlc или smplayer через указаный прокси - работает,
vlc --http-proxy "145.249.106.107:8118" "http://50.7.127.154/s/3a3b96c100ad2f10f7ea6acb70ad578f/sd_480v/moroziki.morozy_480.mp4"

,
через wget - никак не хотит
$ wget -v --tries=3 -c --proxy  http://145.249.106.107:8118/ "http://50.7.127.154/s/3a3b96c100ad2f10f7ea6acb70ad578f/sd_480v/moroziki.morozy_480.mp4"
--2018-06-13 19:13:46--  http://145.249.106.107:8118/
Connecting to 145.249.106.107:8118... connected.
HTTP request sent, awaiting response... 400 Bad Request
2018-06-13 19:14:18 ERROR 400: Bad Request.

--2018-06-13 19:14:18--  http://50.7.127.154/s/3a3b96c100ad2f10f7ea6acb70ad578f/sd_480v/moroziki.morozy_480.mp4
Connecting to 50.7.127.154:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10 [text/html]
Saving to: ‘moroziki.morozy_480.mp4’

moroziki.morozy_480.mp4                 100%[=============================================================================>]      10  --.-KB/s    in 0s      

2018-06-13 19:14:18 (601 KB/s) - ‘moroziki.morozy_480.mp4’ saved [10/10]

FINISHED --2018-06-13 19:14:18--
Total wall clock time: 32s
Downloaded: 1 files, 10 in 0s (601 KB/s)

подумал дело в useragent менял ,разные ,но видимо дело не в них ,
т.к. меняя useragent в плеере ,даже на "бла-бла-бла" - видео показывает.
и куки не используются(без них плеер открывает) ,значит привязка только к IP адресу т.е. к прокси,
попробовал через курлы - всё работает
$ curl -v --proxy "145.249.106.107:8118"  -O  "http://50.7.127.154/s/3a3b96c100ad2f10f7ea6acb70ad578f/sd_480v/moroziki.morozy_480.mp4"*   Trying 145.249.106.107...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:15 --:--:--     0* Connected to 145.249.106.107 (145.249.106.107) port 8118 (#0)
> GET http://50.7.127.154/s/3a3b96c100ad2f10f7ea6acb70ad578f/sd_480v/moroziki.morozy_480.mp4 HTTP/1.1
> Host: 50.7.127.154
> User-Agent: curl/7.47.0
> Accept: */*
> Proxy-Connection: Keep-Alive
> 
  0     0    0     0    0     0      0      0 --:--:--  0:00:16 --:--:--     0< HTTP/1.1 200 OK
< Server: nginx
< Date: Wed, 13 Jun 2018 12:17:54 GMT
< Content-Type: video/mp4
< Content-Length: 44067403
< Last-Modified: Thu, 04 May 2017 12:29:50 GMT
< ETag: "590b1ebe-2a06a4b"
< Accept-Ranges: bytes
< Connection: close
* HTTP/1.1 proxy connection set close!
< Proxy-Connection: close
< 
{ [1448 bytes data]
100 42.0M  100 42.0M    0     0   447k      0  0:01:36  0:01:36 --:--:--  304k
* Closing connection 0
зы
прописал проксю в конфиг ~/.wgetrc http_proxy = 145.249.106.107:8118
заработало ,
$ wget -v --tries=3 -c "http://50.7.127.154/s/3a3b96c100ad2f10f7ea6acb70ad578f/sd_480v/moroziki.morozy_480.mp4"--2018-06-13 19:53:13--  http://50.7.127.154/s/3a3b96c100ad2f10f7ea6acb70ad578f/sd_480v/moroziki.morozy_480.mp4
Connecting to 145.249.106.107:8118... connected.
Proxy request sent, awaiting response... 200 OK
Length: 44067403 (42M) [video/mp4]
Saving to: ‘moroziki.morozy_480.mp4’

moroziki.morozy_480.mp4                 100%[=============================================================================>]  42,03M   307KB/s    in 83s     

2018-06-13 19:54:41 (517 KB/s) - ‘moroziki.morozy_480.mp4’ saved [44067403/44067403]
НО мне надыть рулить проксями в самом скрипте ,а не вконфиге?
что не так,что не правильно?
  • Вопрос задан
  • 2313 просмотров
Решения вопроса 1
@AVKor
http_proxy
в конфиге ни на что не намекает?

Это во-первых.

Во-вторых, конфиг для wget можно указать явно через опцию --config. Так что можно выбрать даже два варианта для запуска: или прописать все нужные опции в нужном файле конфига или указать в явном виде в команде запуска.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@mukhumaev
# Скачать файл через proxy:
http_proxy="http://33.22.44.44:8080" wget http://www.google.com/favicon.ico
  Тоже самое, но для HTTPS
https_proxy="http://33.22.44.44:8080" wget https://www.google.com/favicon.ico
 # Использовать proxy с авторизацией
http_proxy="http://33.22.44.44:8080" wget --proxy-user=user --proxy-password=password http://www.google.com/favicon.ico

Взято отсюда
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы