Извлечь значение переменной в коде JavaScript из HTML

Этот код оптимизирован и приведет к результату быстрее, чем к выбранному в качестве наилучшего ответа. Этот код экономит от перехода на очень длительный процесс преследования указателя на передний и задний узлы, который будет происходить в следующем случае, если мы последуем метод «лучшего ответа». Посмотрите на сухой пробег следующего, и вы поймете, что я пытаюсь сказать. Затем посмотрите на проблему с помощью приведенного ниже метода и измерьте «нет». шагов, предпринятых для поиска ответа.

1-> 2-> 9-> 3 ^ -------- ^

Вот код:

boolean loop(node *head)
{
 node *back=head;
 node *front=head;

 while(front && front->next)
 {
  front=front->next->next;
  if(back==front)
  return true;
  else
  back=back->next;
 }
return false
}
0
задан AtulParmar 17 January 2019 в 11:35
поделиться

1 ответ

Вот оно:

import Foundation
import Kanna

let htmlString = "<!DOCTYPE html><html lang=\"en\" class=\"no-js not-logged-in client-root\"><head> <meta charset=\"utf-8\"></head><body> <script type=\"text/javascript\"> window._sharedData = { \"string\": \"Hello World\" }; </script> <script type=\"text/javascript\"> </script> <script type=\"text/javascript\"> </script></body></html>"

guard let doc = try? HTML(html: htmlString, encoding: .utf8) else { print("Build DOM error"); exit(0) }

let body = doc.xpath("//script")
            .compactMap { [110].text }
            .filter { [110].contains("window._sharedData") }
            .map { [110].replacingOccurrences(of: " window._sharedData = ", with: "") }
            .map { [110].dropLast(2) }
            .first

print("body: ", body) 
// body:  Optional("{ \"string\": \"Hello World\" }")

После этого вы можете проверить, что тело не ноль и готово

0
ответ дан Sergey Di 17 January 2019 в 11:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: