Дамп HTML із сценарію


1

Чи є спосіб створити скрипт для завантаження джерела HTML до тексту для html-файлу локально?

Наприклад, якщо я хотів щодня архівувати HTML Google.com.

Я готовий до партії, VBS або PS1, але бажано BAT або VBS.

Я, можливо, використовую це на багатьох комп’ютерах, тому бажаю, щоб я хотіла вбудованого сценарію.

Відповіді:


2

З 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)

З 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

Це має спрацювати. Це буде сильний біль від машин XP, але це чудова допомога, дякую.
Джефф Ф.

2

Якщо у вас на системному шляху є wget для Windows , це швидкий однорівень:

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

Це зберігає сторінку локально у поточному каталозі як bar.html.


Я розглядав це, я, мабуть, мав би бути більш зрозумілим у питанні. Я вважаю за краще рішення, яке не потребує встановлення, і це може бути зроблено на комп'ютерах через мережу, якщо потрібно.
Джефф Ф.

0

Це не найчистіше рішення, але я його успішно використовував:

  1. Завантажте QtWeb Portable , виберіть автономнийQtWeb.exe

  2. Потім з командного рядка можна просто запустити QtWeb.exe -dump_and_quit "url" "file"

  3. QtWeb створює папку кешу та налаштувань, тому ви можете видалити їх:

    rd /s /f QtWebCache
    rd /s /f QtWebSettings
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.