2013-07-10 2 views
1

Я работаю над проектом, в котором мне нужно извлечь данные с веб-сайта & магазина в acess. Я могу читать данные с сайта & хранить его в html doc, но теперь я хочу проанализировать содержимое html doc & в доступе. Ниже приведены содержимое HTML-файла,Анализ HTML-документа с использованием Html Agility Pack

<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 Agility Pack в C#? Я пробовал этот код, а как я могу продолжить?

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");