1

Тема: AHK: Загрузить код страницы в файл.

Приветствую!
Вопрос в том, что не получается загрузить полный код страницы https://app.mobalytics.gg/lol/champions … p;rank=All. Она динамически догружается, когда на ней находишься, а через UrlDownloadToFile эта динамическая подгрузка не происходит. Подскажите, пожалуйста, как загрузить полный код?

2

Re: AHK: Загрузить код страницы в файл.

Как-то так:

n := "0"
loop
{
   loop
   {
      Sleep, 1200
      HTTP := ComObjCreate("WinHTTP.WinHTTPRequest.5.1")
      HTTP.Open("POST", "https://app.mobalytics.gg/api/lol/graphql/v1/query", true)
      HTTP.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.79 Safari/537.36")
      HTTP.SetRequestHeader("Pragma", "no-cache")
      HTTP.SetRequestHeader("Cache-Control", "no-cache, no-store")
      HTTP.SetRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT")
      HTTP.SetRequestHeader("Content-Type", "application/json")
      HTTP.Send("{""operationName"":""LolChampionCountersStatsOptionsQuery"",""variables"":{""top"":10,""slug"":""jinx"",""role"":null,""queue"":null,""rank"":""All"",""region"":null,""vsChampionRole"":""ADC"",""sortField"":""WR"",""order"":""DESC"",""skip"":" n "},""extensions"":{""persistedQuery"":{""version"":1,""sha256Hash"":""f721539f9f6b532a55871ff1493bd4292058a4b964cf9b605ce6c7f894f5fab3""}}}")
      try {
         HTTP.WaitForResponse()
         ;if (HTTP.ResponseText != "")
         break
      }
      catch {
         sleep 5000
      }
   }

   ;msgbox % n
   RTxt := HTTP.ResponseText
   msgbox % RTxt
   All .= RTxt "`n"

   n+=10 ;шаг
   if (30 <= n) ;30 всего
      break
}
fileappend, % All, %A_ScriptDir%\All.html, UTF-8
return

3

Re: AHK: Загрузить код страницы в файл.

john_dease
Спасибо большое, то что нужно. А еще такой момент, вначале sleep 1200 обязательный? Просто на скорость программы это довольно заметно влияет.

4

Re: AHK: Загрузить код страницы в файл.

jbn238
Если запросов немного - необязательно, хотя и зависит от сайта.

5

Re: AHK: Загрузить код страницы в файл.

john_dease
Хорошо. спасибо!