2013-06-06 1 views

답변

2

CsQuery는 HTML 만 분석합니다 - 자바 스크립트가 아닙니다. 그래서 당신은 쉽게이 같은 script 블록의 내용의 연락을 취하는 얻을 수 :

CQ dom = @"<script type='text/javascript'> 
       dealerdata = 'HelloWorld' 
      </script>"; 

var script = dom["script"].Text(); 
// script == "dealerdata = 'HelloWorld' 

을 ...하지만 당신은 자신에있어, 그것은 자바 스크립트입니다. 귀하의 예제에서 그것은 사소한 것입니다 :

string[] parts = script.Split('='); 
string value = parts[1].Trim(); 

. 그러나 이것은 입력 내용이 정확히 무엇인지 알기 때문에 발생합니다. 타겟이 될 수있는 문맥을 정확히 모르는 일반적인 사용 사례의 경우 많은 도움이되지 않습니다.

.NET에서 Javascript를 구문 분석해야한다면 Jurassic 프로젝트 인 멋진 JavaScript 컴파일러를 사용하는 것이 좋습니다. 속도가 가장 중요하다면 javascript.net을보십시오. 이것은 구글의 V8 엔진을 감싸고 있으며, 쥬라기보다 훨씬 빠르지 만 비 (非) .NET 의존성을 가질 것이다.