2013-07-10 4 views
1

나는 웹 사이트 & acess에서 데이터를 추출해야하는 프로젝트를 진행 중입니다. 웹 사이트 &에서 데이터를 읽을 수 있지만 지금 html doc & 저장소에 대한 액세스를 구문 분석하고 싶습니다. Html 민첩성 팩을 사용하여 HTML 문서 구문 분석

<HTML><HEAD><TITLE>NCEDC_Search_Results</TITLE></HEAD><BODY>Your search parameters are: 

<ul> 
<li>start_time=2002/01/01,00:00:00 
<li>end_time=2037/01/01,00:00:00 
<li>minimum_magnitude=3.0 
<li>maximum_magnitude=10 
<li>etype=E 
<li>rflag=A,F,H,I 
<li>system=selected 
<li>format=ncread 
</ul> 
<PRE> 
Date  Time    Lat  Lon Depth Mag Magt Nst Gap Clo RMS SRC Event ID 
---------------------------------------------------------------------------------------------- 
2002/01/10 00:44:51.53 40.4415 -126.0167 25.37 3.92 Md 56 269 147 0.29 NCSN 21208454 
2002/01/12 04:41:46.93 36.7690 -121.4812 7.74 3.06 Md 54 35 5 0.09 NCSN 21208721 


</PRE> 
</BODY></HTML> 

내가 <pre></pre> 태그 사이의 내용을 원하는 HTML 파일의 내용은 다음과 같습니다. 열 이름은 위의 html 문서에 나와 있습니다.

어떻게 C#에서 Html Agility Pack을 사용하여이 작업을 수행 할 수 있습니까? 이 코드를 사용해 보았습니다. bt 어떻게 진행합니까?

string txt=null; 
     HtmlDocument doc = new HtmlDocument(); 
     doc.LoadHtml("E://text.html"); 
     HtmlNode node = doc.DocumentNode; 
     HtmlNodeCollection pre = node.SelectNodes("//pre"); 
     //var prenodes = doc.DocumentNode.SelectNodes("//pre"); 
     if (pre != null) 
     { 




     } 

     Console.ReadKey(); 


    } 

답변

1

HTML 파일을로드하는 데 잘못된 방법을 사용하고 있습니다. 따라서 다음 SelectNodes XPath 쿼리가 작동하지 않습니다.

doc.LoadHtml(string html)에는 문서 파일의 경로가 아닌 전체 HTML 문서가 포함 된 문자열이 필요합니다.

대신을 시도해보십시오

doc.Load("E://text.html"); 
관련 문제