Dump HTML from script

1

Existe uma maneira de criar um script para baixar o código-fonte HTML para um texto para o arquivo html localmente?

Por exemplo, se eu quisesse arquivar o HTML do Google.com todos os dias.

Estou pronto para o lote, VBS ou PS1, mas preferencialmente BAT ou VBS.

Eu posso estar usando isso em muitos computadores, então, de preferência, gostaria apenas de uma solução de script incorporada.

    
por Jeff F. 17.01.2012 / 19:01

3 respostas

2

Com o PowerShell:

# $url is the URL you want to download
$url = "http://www.google.com/"

# $path is the location where you want to save the file
$path = "C:\Users\Public\Downloads\google.html"

$client = New-Object System.Net.WebClient
$client.DownloadFile($url, $path)

Com o VBScript:

' 'url' is the url you want to download
url = "http://www.google.com/"

' 'path' is the location where you want to save the file
path = "C:\Users\Public\Downloads\google.html"

Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")
objXMLHTTP.open "GET", url, false
objXMLHTTP.send()

If objXMLHTTP.Status = 200 Then
  Set objADOStream = CreateObject("ADODB.Stream")
  objADOStream.Open
  objADOStream.Type = 1 'adTypeBinary
  objADOStream.Write objXMLHTTP.ResponseBody
  objADOStream.Position = 0    'Set the stream position to the start
  Set objFSO = Createobject("Scripting.FileSystemObject")
  If objFSO.Fileexists(path) Then objFSO.DeleteFile path
  Set objFSO = Nothing
  objADOStream.SaveToFile path
  objADOStream.Close
  Set objADOStream = Nothing
End if

Set objXMLHTTP = Nothing
    
por 17.01.2012 / 20:56
2

Se você tiver wget for Windows no caminho do seu sistema, é um breve one-liner:

wget http://www.example.com/foo/bar.html

Isso salva a página localmente no diretório atual como bar.html .

    
por 17.01.2012 / 19:25
0

Esta não é a solução mais limpa, mas eu a usei com sucesso:

  1. Faça o download do QtWeb Portable , escolha o QtWeb.exe

  2. autônomo
  3. Em seguida, na linha de comando, você pode simplesmente executar QtWeb.exe -dump_and_quit "url" "file"

  4. O QtWeb cria um cache e uma pasta de configurações, então você pode querer removê-los:

    rd /s /f QtWebCache
    rd /s /f QtWebSettings
    
por 17.01.2012 / 21:31