Como posso baixar algo da Web diretamente sem o Internet Explorer ou Firefox abrindo o Acrobat Reader / Quicktime / MS Word / o que for?
Estou usando o Windows, então uma versão do Wget para Windows faria.
Como posso baixar algo da Web diretamente sem o Internet Explorer ou Firefox abrindo o Acrobat Reader / Quicktime / MS Word / o que for?
Estou usando o Windows, então uma versão do Wget para Windows faria.
Respostas:
O Wget para Windows deve funcionar.
O GNU Wget é um utilitário de rede gratuito para recuperar arquivos da World Wide Web usando HTTP e FTP, os dois protocolos da Internet mais usados. Ele funciona de maneira não interativa, permitindo assim o trabalho em segundo plano, após o logoff.
A partir desta seção de FAQ , links de download são sugeridas:
Binários do Windows
cortesia de Jernej Simončič: http://eternallybored.org/misc/wget/
from sourceforge: http://gnuwin32.sourceforge.net/packages/wget.htm
[...]
É utilizado um link com cortesia de Jernej Simončič.
Uma alternativa que descobri recentemente, usando o PowerShell:
$client = new-object System.Net.WebClient
$client.DownloadFile("http://www.xyz.net/file.txt","C:\tmp\file.txt")
Também funciona com consultas GET.
Se você precisar especificar credenciais para baixar o arquivo, adicione a seguinte linha entre:
$client.Credentials = Get-Credential
Um prompt de credenciais padrão do Windows será exibido. As credenciais digitadas serão usadas para baixar o arquivo. Você só precisa fazer isso uma vez para sempre, usando o objeto $ client.
(new-object System.Net.WebClient).DownloadFile('http://www.xyz.net/file.txt','C:\tmp\file.txt')
Se você possui o PowerShell> = 3.0, pode usar Invoke-WebRequest
Invoke-WebRequest -OutFile index.html http://superuser.com
Ou jogou golfe
iwr -outf index.html http://superuser.com
System.Net.WebClient
. No entanto, você pode fazer o Invoke-WebRequest
trabalho adicionando -UserAgent [Microsoft.PowerShell.Commands.PSUserAgent]::FireFox
.
wget
ou curl -O
, curl --remote-name
ou curl -J
?)
O Windows possui seu próprio utilitário de download de linha de comando - BITSAdmin :
O BITSAdmin é uma ferramenta de linha de comando que você pode usar para criar trabalhos de download ou upload e monitorar seu progresso.
EDIT : 26.01.15 - Aqui está minha visão geral de como um arquivo pode ser baixado no Windows sem ferramentas externas
E um exemplo completo de bitsadmin:
bitsadmin /transfer myDownloadJob /download /priority normal http://downloadsrv/10mb.zip c:\10mb.zip
Edit : 15.05.2018 - acabou sendo possível baixar um arquivo com certutil também :
certutil.exe -urlcache -split -f "https://download.sysinternals.com/files/PSTools.zip" pstools.zip
O Certutil não é instalado por padrão no XP / Win2003, mas está disponível nas versões mais recentes do Windows. Para o XP / 2003, você precisará do Pacote de Ferramentas Administrativas para o Windows Server 2003
Salve o texto a seguir como wget.js
e simplesmente chame
cscript /nologo wget.js http://example.com
Este é o código:
var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
WinHttpReq.Open("GET", WScript.Arguments(0), /*async=*/false);
WinHttpReq.Send();
WScript.Echo(WinHttpReq.ResponseText);
/* To save a binary file use this code instead of previous line
BinStream = new ActiveXObject("ADODB.Stream");
BinStream.Type = 1;
BinStream.Open();
BinStream.Write(WinHttpReq.ResponseBody);
BinStream.SaveToFile("out.bin");
*/
Há um cURL nativo para Windows disponível aqui . Existem muitos tipos disponíveis - com e sem suporte a SSL.
Você não precisa da bagagem extra do Cygwin e coisas do gênero, apenas um pequeno arquivo EXE.
Também é importante saber que há tanto wget
e curl
aliases construídas em todas as versões modernas de Windows PowerShell. Eles são equivalentes.
Não são necessários arquivos ou downloads extras para obter a wget
funcionalidade:
Usando Curl In Powershell (o Geek Sociável)
Excerto:
Você pode digitar um comando cURL como aquele que baixa um arquivo de um repositório do GitHub.
e parece que funciona, mas o que está realmente fazendo é apenas usar cURL como um alias. No exemplo acima, o que acontecerá é que você apenas obterá os cabeçalhos em vez do próprio arquivo.
Os aliases no PowerShell permitem criar atalhos para comandos mais longos, para que você não precise digitá-los o tempo todo.
Se você digitar o comando Get-Alias, ele fornecerá uma lista de todos os aliases usados no PowerShell. Como você pode ver, o comando curl chama apenas o comando Invoke-WebRequest. Eles são semelhantes, mas não são os mesmos, razão pela qual a solicitação acima não funciona para nós.
Para que isso funcione corretamente no PowerShell, a maneira mais fácil é usar variáveis e o -OutFile
argumento, como mostrado aqui:
(nome do arquivo cortado na imagem “ https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/mongodb-on-ubuntu/azuredeploy.json ”)
Essa sintaxe fará o download de todo o conteúdo do arquivo de destino no arquivo azuredeploy.json
localnewfile.json
A principal vantagem é que ele está embutido no próprio Powershell, portanto esse código será executado diretamente sem downloads ou outras criações extras de arquivos são necessárias para fazê-lo funcionar em qualquer versão moderna do Windows.
Criei um arquivo myGet.bat rápido que chama o método PowerShell descrito acima.
@Echo OFF
SetLocal EnableDelayedExpansion
Set Var=%1
Set Var=!Var:http://=!
Set Var=!Var:/=,!
Set Var=!Var:%%20=?!
Set Var=!Var: =?!
Call :LOOP !var!
Echo.Downloading: %1 to %~p0!FN!
powershell.exe -Command (new-object System.Net.WebClient).DownloadFile('%1','%~p0!FN!')
GoTo :EOF
:LOOP
If "%1"=="" GoTo :EOF
Set FN=%1
Set FN=!FN:?= !
Shift
GoTo :LOOP
Peguei emprestado algum código da URL de análise para o nome do arquivo com espaço .
powershell.exe -Command "Invoke-WebRequest -OutFile ./file-name https://location/file-name"
<- Uso simples do PowerShell de uma linha no local de codificação do arquivo de script e no nome do arquivo.
Eu estava procurando o mesmo e, como não tinha o privilégio de instalar nenhum dos pacotes acima, fiz uma pequena solução alternativa (para baixar mais de 30 arquivos):
firefox.exe
no início de cada linhaProgram Files
Se o PowerShell for uma opção, essa é a rota preferida, pois você (potencialmente) não precisará instalar nada extra:
(new-object System.Net.WebClient).DownloadFile('http://www.xyz.net/file.txt', 'C:\tmp\file.tx??t')
Caso contrário, o Wget para Windows, como outros já apontaram, é definitivamente a segunda melhor opção. Conforme publicado em outra resposta, parece que você pode baixar o Wget por si só ou pode fazer o download como parte do Cygwin ou MSys .
Se, por algum motivo, você se encontrar preso em um túnel do tempo, usando uma máquina que não possui o PowerShell e não tenha acesso a um navegador da Web em funcionamento (ou seja, o Internet Explorer é o único navegador no sistema e suas configurações estão corrompidos) e seu arquivo está em um site FTP (ao contrário de HTTP):
start->run "FTP", press "OK".
Se a memória servir, ela existe desde o Windows 98 e posso confirmar que ainda está lá no Windows 8 RTM (pode ser necessário acessar appwiz.cpl
e adicionar / remover recursos para obtê-lo). Este utilitário pode baixar e fazer upload de arquivos de / para sites FTP na web. Também pode ser usado em scripts para automatizar qualquer operação.
Essa ferramenta incorporada me salvou a vida real no passado, especialmente nos dias de ftp.cdrom.com - baixei o Firefox dessa maneira uma vez, em uma máquina completamente quebrada que tinha apenas uma Internet discada conexão (quando o tamanho máximo de pacote do sneakernet ainda era 1,44 MB e o Firefox ainda era chamado de "Netscape" / me faz trollface ).
Algumas dicas: é seu próprio processador de comandos e sua própria sintaxe. Tente digitar "ajuda". Todos os sites FTP exigem um nome de usuário e senha; mas se eles permitem usuários "anônimos", o nome de usuário é "anônimo" e a senha é o seu endereço de e-mail (você pode inventar um se não quiser ser rastreado, mas geralmente existe algum tipo de lógica para garantir que seja um endereço de email válido).
C:\tmp\file.tx??t
Cygwin tem Wget (e muitos mais utilitários).
E http://www.httrack.com/ possui uma boa interface gráfica (e é grátis), para espelhar sites. Ele também tem uma versão Linux.
Você também pode usar o wget
empacotado no PowerShell . ; ^) Para abrir, pressione a tecla Windows e digite "powershell" ou Windows-R e digite "powershell" e pressione Enter.
Nenhuma instalação é necessária.
Uma diferença interessante do convencional wget
(mais nesse link ): você não pode simplesmente usar o maior que para canalizar para um arquivo. wget
no PowerShell é apenas um invólucro de conveniência Invoke-WebRequest
e você precisa usar sua sintaxe para gravar em um arquivo.
wget https://superuser.com/questions/25538 -OutFile rubySlippers.html
-OutFile
fez o trabalho!
Você pode obter o WGet for Windows aqui . Como alternativa, você pode clicar com o botão direito do mouse no link de download do item que deseja baixar e escolher Salvar como. Isso fará o download do arquivo e não o abrirá no aplicativo atribuído.
Eu acho que a instalação wget
via Chocolatey é a maneira mais fácil.
choco install wget
wget
partir da linha de comando, como nos sistemas * nix.Procure a /download
função em https://lolbas-project.github.io .
Neste momento, existem Bitsadmin.exe
, Certutil.exe
, Esentutl.exe
, Expand.exe, Extrac32.exe
, Findstr.exe
, Hh.exe
, Ieexec.exe
, Makecab.exe
, Replace.exe
para o Windows Vista, Windows 7, Windows 8, o Windows 8.1, Windows 10 e as versões equivalentes Server.
Se você deseja uma GUI, tente o VisualWget , que está realmente limpo e com todos os recursos. É baseado no GNU Wget para seu mecanismo de download.
EDIT: link atualizado.
Conforme documentado nesta resposta da SU , você pode usar o seguinte no Powershell:
Import-Module bitstransfer
start-bitstransfer -source http://something/something.ext -destination c:\something.ext
Se você precisa de uma publicação visual para Windows, aqui está uma.
Você pode postar dados ou arquivos com ele.