HTMLAgilityPack을 사용하여 javascript HTML 구문 분석하기

c# html html-agility-pack parsing

문제

HTML 애자일 팩을 사용하여 구문 분석하려고하는 다음 HTML이 있습니다.

다음은 HTML 코드 스 니펫입니다.

<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>...

나는 그 4 개의 데이터 변수 (Data1, Data2, Data3, Data4)를 얻으려고하고있다. 첫째, 자바 스크립트를 찾으려고 노력 :

<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>...

실제로 자바 스크립트가 맞는지 어떻게 확인할 수 있습니까? 관련 자바 스크립트를 찾은 후 어떻게 그 4 데이터 변수 (Data1, Data2, Data3, Data4)를 얻을 수 있습니까?

인기 답변

HTML 민첩성 팩으로 자바 스크립트를 구문 분석 할 수 없으며 HTML 구문 분석 만 지원합니다. 다음과 같이 XPATH를 사용하여 필요한 스크립트를 얻을 수 있습니다.

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

하지만 당신은 다른 방법 (regex, js 문법, 등)와 자바 스크립트를 구문 분석해야합니다.




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.