JavaScript-HTML mit HTMLAgilityPack analysieren

c# html html-agility-pack parsing

Frage

Ich habe den folgenden HTML-Code, den ich mit dem HTML Agility Pack analysieren möchte.

Dies ist ein Ausschnitt aus HTML-Code:

<body id="station_page" class="">
...
<div>....</div>
<script type="text/javascript"> 
if (Blablabla == undefined) { var Blablabla = {}; }
Blablabla .Data1= "I want this data";
Blablabla .BlablablaData = 
{  "Data2":"I want this data",
"Blablabla":"",
"Blablabla":0   }
{   "Blablabla":123,
"Data3":"I want this data",
"Blablabla":123}
    Blablabla .Data4= I want this data;
</script>...

Ich versuche, diese 4 Daten Variable (Data1, Data2, Data3, Data4) zu bekommen. Zuerst habe ich versucht, das Javascript zu finden:

doc.DocumentNode.SelectSingleNode("//script[@type='text/javascript']").InnerHtml

Wie kann ich überprüfen, ob es wirklich das richtige Javascript ist? Nachdem ich das relevante Javascript gefunden habe, wie bekomme ich diese 4 Datenvariable (Data1, Data2, Data3, Data4)?

Beliebte Antwort

Sie können JavaScript mit HTML Agility Pack nicht parsen, es unterstützt nur HTML-Parsing. Sie können mit einem XPATH wie folgt zum benötigten Skript gelangen:

doc.DocumentNode.SelectSingleNode("//script[contains(text(), 'Blablabla')]").InnerHtml

Aber Sie müssen das Javascript mit einer anderen Methode analysieren (Regex, js-Grammatik, etc.)



Related

Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum