![]() |
wget команда не закачивает файл по ссылке
добрый день. хотел закачать файл .csv по ссылке через wget команду. команда такая: c:\wget\wget.exe -i c:\url-list.txt --secure-protocol=auto -nc -c -P c:\files\ . выходит такое сообщение
Скрытый текст
HTML код:
Microsoft Windows [Version 6.1.7601] какая причина не пойму, так как мало в этом разбираюсь. есть момент что эсли эту ссылку на яхоо вставить в браузер IE, то загрузка не происходит. если же вставить в браузер гугл хром, то без лишних диалогов закачивает на ура. хотелось бы закачать через wget. не могли бы помочь найти проблему. или есть другие варианты для скачивания нескольких файлов по списку |
Цитата:
Код:
--load-cookies=ФАЙЛ |
Цитата:
не работает. я очень плохо в этом разбираюсь попробовал так - c:\wget\wget.exe --load-cookies=https://query1.finance.yahoo.com/v7/finance/download/AAU?period1=1530282224&period2=1561818224&interval=1d&events=history&crumb=lW3nnVK.6HD - тоже не работает |
v79italya, явным же образом написано:
Цитата:
|
как в коде прописать Username/Password. я уже все пробовал из того, что нагуглил.
есть ли возможность прописать в коде использование браузера гугл хром? может из за этого не работает |
v79italya, Вы не поняли. Вам нужно сохранить Cookie в файл, затем посунуть wget'у.
Пример: Код:
wget.exe -с "https://query1.finance.yahoo.com/v7/finance/download/AAU?period1=" --load-cookies=C:\mycookies.txt Или или или: Код:
wget.exe "Ссылка" --user=ПОЛЬЗОВАТЕЛЬ --password=ПАРОЛЬ Код:
wget.exe "Ссылка" --http-user= ПОЛЬЗОВАТЕЛЬ --http-password=ПАРОЛЬ Код:
wget.exe "Ссылка" --ftp-user=ПОЛЬЗОВАТЕЛЬ --ftp-password=ПАРОЛЬ Скрытый текст
Код:
Использование: wget [ПАРАМЕТР]... [url]... |
Nordek, спасибо за совет. последние три команды, по моему, ругаются уже по другому поводу
HTML код:
[spoiler]Microsoft Windows [Version 6.1.7601] |
Цитата:
Код:
c:\wget\wget.exe -i "https://query1.finance.yahoo.com/v7/finance/download/AAU?period1=1530282224&period2=1561818224&interval=1d&events=history&crumb=lW3nnVK.6HD" --http-user=xxx@yahoo.com --http-password=xxx -nc -c -P C:\files\ |
Nordek, теперь такие ответы
Скрытый текст
Microsoft Windows [Version 6.1.7601]
(c) Корпорация Майкрософт 2012. Все права защищены. C:\Users\Администратор>c:\wget\wget.exe -i "https://query1.finance.yahoo.com/v7/ finance/download/AAU?period1=1530282224&period2=1561818224&interval=1d&events=hi story&crumb=lW3nnVK.6HD" --http-user=xxx@yahoo.com --http-password=xxx -nc -c -P c:\files\ --2019-06-30 12:28:30-- https://query1.finance.yahoo.com/v7/finance/download/AA U?period1=1530282224&period2=1561818224&interval=1d&events=history&crumb=lW3nnVK .6HD Resolving query1.finance.yahoo.com (query1.finance.yahoo.com)... 87.248.118.22, 87.248.118.23, 2a00:1288:80:800::7000 Connecting to query1.finance.yahoo.com (query1.finance.yahoo.com)|87.248.118.22| :443... connected. HTTP request sent, awaiting response... 401 Unauthorized Unknown authentication scheme. Username/Password Authentication Failed. No URLs found in https://query1.finance.yahoo.com/v7/...oad/AAU?period 1=1530282224&period2=1561818224&interval=1d&events=history&crumb=lW3nnVK.6HD. C:\Users\Администратор>c:\wget\wget.exe -i "https://query1.finance.yahoo.com/v7/ finance/download/AAU?period1=1530282224&period2=1561818224&interval=1d&events=hi s tory&crumb=lW3nnVK.6HD" --ftp-user=xxx@yahoo.com --ftp-password=xxx -n c -c -P c:\files\ --2019-06-30 12:28:53-- https://query1.finance.yahoo.com/v7/finance/download/AA U?period1=1530282224&period2=1561818224&interval=1d&events=his%20tory&crumb=lW3n nVK.6HD Resolving query1.finance.yahoo.com (query1.finance.yahoo.com)... 87.248.118.22, 87.248.118.23, 2a00:1288:80:800::7000 Connecting to query1.finance.yahoo.com (query1.finance.yahoo.com)|87.248.118.22| :443... connected. HTTP request sent, awaiting response... 401 Unauthorized Username/Password Authentication Failed. No URLs found in https://query1.finance.yahoo.com/v7/...oad/AAU?period 1=1530282224&period2=1561818224&interval=1d&events=his tory&crumb=lW3nnVK.6HD. C:\Users\Администратор>c:\wget\wget.exe -i "https://query1.finance.yahoo.com/v7/ finance/download/AAU?period1=1530282224&period2=1561818224&interval=1d&events=hi story&crumb=lW3nnVK.6HD" --user=xxx@yahoo.com --password=xxx -nc -c - P c:\files\ --2019-06-30 12:29:35-- https://query1.finance.yahoo.com/v7/finance/download/AA U?period1=1530282224&period2=1561818224&interval=1d&events=history&crumb=lW3nnVK .6HD Resolving query1.finance.yahoo.com (query1.finance.yahoo.com)... 87.248.118.22, 87.248.118.23, 2a00:1288:80:800::7000 Connecting to query1.finance.yahoo.com (query1.finance.yahoo.com)|87.248.118.22| :443... connected. HTTP request sent, awaiting response... 401 Unauthorized Unknown authentication scheme. Username/Password Authentication Failed. No URLs found in https://query1.finance.yahoo.com/v7/...oad/AAU?period 1=1530282224&period2=1561818224&interval=1d&events=history&crumb=lW3nnVK.6HD. C:\Users\Администратор> |
ему кукис нужен от страницы с html-таблицей. https://blogs.sas.com/content/sgf/20...download-data/
|
Sham, по совету из сообщения №6 у меня не получилось получить Cookie.
по ссылке есть код. еще и не известно рабочий или нет, но как этот код проверить? возможно ли переделать под Excel или VBS или под SHell или VGet? Скрытый текст
/* use WORK location to store our temp files */
filename out "%sysfunc(getoption(WORK))/output.txt"; filename hdrout "%sysfunc(getoption(WORK))/response1.txt"; /* This PROC step caches the cookie for the website finance.yahoo.com */ /* and captures the web page for parsing later */ proc http out=out headerout=hdrout url="https://finance.yahoo.com/quote/AAPL/history?p=AAPL" method="get"; run; /* Read the response and capture the cookie value from */ /* the CrumbStore field. */ /* The file has very long lines, longer than SAS can */ /* store in a single variable. So we read in <32k chunks. */ data crumb (keep=crumb); infile out recfm=n lrecl=32767; /* the @@ directive says DON'T advance pointer to next line */ input txt: $32767. @@; pos = find(txt,"CrumbStore"); if (pos>0) then do; crumb = dequote(scan(substr(txt,pos),3,':{}')); /* cookie value can have unicode characters, so must URLENCODE */ call symputx('getCrumb',urlencode(trim(crumb))); output; end; run; %put &=getCrumb.; filename data "%sysfunc(getoption(WORK))/data.csv"; filename hdrout2 "%sysfunc(getoption(WORK))/response2.txt"; proc http out=data headerout=hdrout2 url="https://query1.finance.yahoo.com/v7/finance/download/AAPL?period1=1535835578%str(&)period2=1538427578%str(&)interval=1d%str(&)events=history%str(&)crumb= &getCrumb." method="get"; run; proc import file=data out=history dbms=csv replace; run; proc sgplot data=history; highlow x=date high=high low=low / open=open close=close; xaxis display=(nolabel) minor; yaxis display=(nolabel); run; |
параметр crump в url парсится из страницы с таблицей. ..."CrumbStore":{"crumb":"VtJMp2OUzaw"}... (будет ...&crumb=VtJMp2OUzaw)...
|
попробуйте этот js-скрипт, вроде качает.
Скрытый текст
Код:
var dir = 'c:\\files'; |
Sham, спасибо за ответ, только как этим кодом пользоваться. объясните как дураку подробно.
нагуглил про Ctrl+Shift+J. вставил код - вышел такой ответ. в какой программе этот код использовать? в принципе, вчера я установил Python 3.7, но как пользоваться - не знаю. |
это же WSH
Код:
CScript c:\script.js //Nologo //E:JScript |
Цитата:
ладно, не будем мучить ни я вас ни вы меня. пусть проблема остается проблемой. полгода уже пытаюсь решить эту проблему. отложу опять в сторону всем спасибо кто пытался тему можно закрывать |
Цитата:
|
Цитата:
Google Chrome
Устанавливаете расширение: cookies.txt
Щелкаете по значку. Выделяете строку вида: Код:
.yahoo.com TRUE / FALSE 1234567890 B abcdef1ghi2j3&b=1&s=kl Создаёте текстовый файл с названием cookies и расширением txt Вносите в cookies.txt скопированные данные вида: Код:
.yahoo.com TRUE / FALSE 1234567890 B abcdef1ghi2j3&b=1&s=kl P.S Cookies можете сразу сохранить в файл нажав click here. В таком случае вам придётся открыть cookies.txt и подправить данные т.к сохраняются они криво. Вы увидите следующее abcdef1ghi2j3&b=1&s=kl Вам нужно будет удалить amp;, т.е: Было: abcdef1ghi2j3&b=1&s=kl Стало: abcdef1ghi2j3&b=1&s=kl Firefox
Устанавливаете расширение: cookies.txt
Нажимаете на значок для сохранения файла. Сохраняете. В случае с Firefox - Не нужно что-то подправлять. Отсюда копируете ссылку Download Data Скачиваете wget'ом, например: Код:
"C:\WGET\wget.exe" --load-cookies="C:\WGET\cookies.txt" "https://query1.finance.yahoo.com/v7/finance/download/AAU?period1=1234567890&period2=1234567890&interval=1d&events=history&crumb=AB12CdeFGHI" Пути к wget.exe и cookies.txt подставляете свои. |
Nordek, только лишь с кукисами - не работает. Требуется уникальный crumb в урле (он связан с кукисами).
v79italya, он уже установлен в системе (cscript.exe в системной папке). "c:\script.js" - это файл с этим кодом. |
Sham, спасибо за скрипт. работает замечательно, даже через чур быстро. надеюсь яхоо не забанит) может в коде можно прописать задержку в треть секунды. еще вопрос: в скрипте нет никаких подводных камней, будет скачивать в любом случае?
Nordek, ваш вариант еще не пробовал. позже попробую. спасибо вам. Iska, спасибо. хорошо что сказали как сделать скрипт. сделал через Notepad++. по двойному клику не сработал, а через ПКМ - открыть с помощью первой же предложенной программой сработало. у меня был вариант полусырой через макрос. сделал браузер по умолчанию гугл хром и через него скачивал. минус что перед применением макроса надо вручную менять папку для закачек браузера., а потом обратно. приложу файл Excel, только надо авторизоваться на Yahoo. спасибо всем что довели дело до конца и проблему решили |
v79italya, мы меняем в урлах параметр crumb, который берём из страницы с таблицей (u1) с помощью регулярного выражения. Они могут изменить текст, имя параметра, способ проверок и тд., и тогда придётся корректировать. По крайней мере с ноября 2018 ничего не менялось, судя по дате блога. Это не публичный API yahoo, где есть какие-то гарантии. Если у них есть API для загрузки этих котировок, то безусловно нужно использовать его.
UPD: нашёл спец. адрес для получения crumb здесь (_https://query1.finance.yahoo.com/v1/test/getcrumb). Обновил пост со скриптом. |
Sham, спасибо за второй вариант скрипта. увидел где можно менять паузу между обращениями на сайт. еще, по моему, есть изменения в строках, относящихся к crumb, но я не разбираюсь в этом и ладно.
на счет crumb я сильно не переживаю. как перестанет работать, возьму с сайта рабочую ссылку и в Excel по быстрому изменю концовку всех ссылок. так и делал для макроса. не будет работать, тогда, чтож, подыму тему), там видно будет. мне это надо то один раз в месяц для аналитики. а так все работает. спасибо большое Nordek, извиняюсь, только ваш вариант так и не запустил. да и ладно. уже есть решение от Sham слушайте, а возможно с помощью таких скриптов скачать таблицу с сайта в csv-файл. вот ссылка- https://finance.yahoo.com/quote/AAL/...ate=1565913600 там нет готового csv. поэтому и хотел узнать ссылка сохранилась не полностью https://finance.yahoo.com/quote/AAL/...ate=1568937600 |
Цитата:
|
Цитата:
Цитата:
еще вопрос. как на этом форуме правильнее, открыть новую тему или можно продолжить в этой? |
Sham, скажите, вы сможете это сделать? я про это:
слушайте, а возможно с помощью таких скриптов скачать таблицу с сайта в csv-файл. вот ссылка- https://finance.yahoo.com/quote/AAL/...ate=1565913600 там нет готового csv. поэтому и хотел узнать |
v79italya, можно, но изначально это json (в таком виде (взят только нужный массив) https://pastebin.com/G6v74TYW ), который нужно перелопатить в csv. Это спарсено со страницы, поэтому в любой момент может всё поменяться.
|
Цитата:
сейчас у меня есть вариант получения этих данных. макросами и формулами в Excel за 30 минут получаю нужные данные с >11500 тикеров. когда сломается, если не смогу исправить, обращусь к Вам. c .csv обработаю в Power Query. по времени, наверное, быстрее получится. приносило бы еще все это прибыль, а то гоняю демосчет уже больше года. |
Помогите с скриптом для скачивания файла по ссылке https://kjkpub.s3.amazonaws.com/soft...e-11842-64.exe
|
sov44, А в чём проблема?
Скрытый текст
Код:
C:\tmp>wget "https://kjkpub.s3.amazonaws.com/software/sumatrapdf/prerel/SumatraPDF-prerelease-11842-64.exe" |
iglezz, хм, сработало. Видимо был какой-то глюк ПК. :dont-know
Код:
bin\wget.exe --no-check-certificate -P "%~dp0TempZ" "https://kjkpub.s3.amazonaws.com/software/sumatrapdf/prerel/SumatraPDF-prerelease-11842-64.exe" |
а как скачать все фото с любой группы в вк? например со стены. Wget -ом? Возможно?
|
Есть более удобные инструменты для этого, типа VK Paranoid tools.
|
DJ Mogarych, нужно чтобы батник сам скачивал фото для (например) обой на комп и/или на цифровую фоторамку и т. п. важно средствами cmd/bat это сделать
|
Время: 09:33. |
Время: 09:33.
© OSzone.net 2001-