그래서 다음 데이터를 CSV로 구문 분석하려고합니다. 필자의 글을 읽으면서 HAP을 사용하는 가장 좋은 방법은 강력한 파서 (parser)가 있기 때문에 들리는 것 같다.HTML 스크랩 표를 CSV (HAP? 사용)
dynamic doc = this.wbControl.Document;
내용
<div class="content">
<fieldset>
<ul class="fieldsetr">
<li class="row medium">
<div class="field">
<div class="shell">
<em class="disable">Sender:</em>
</div>
</div>
<div>
<div class="clip">
<em>[email protected]</em>
</div>
</div>
</li>
<li class="row medium alt">
<div class="field">
<div class="shell">
<em class="disable">Recipient:</em>
</div>
</div>
<div>
<div class="clip">
<em>[email protected]</em>
</div>
</div>
</li>
<li class="row medium">
<div class="field">
<div class="shell">
<em class="disable">Message ID:</em>
</div>
</div>
<div>
<div class="clip">
<em>2342342345235</em>
</div>
</div>
</li>
<li class="row medium alt">
<div class="field">
<div class="shell">
<em class="disable">Message size:</em>
</div>
</div>
<div>
<div class="clip">
<em>18.74 KB
</em>
</div>
</div>
</li>
<li class="row medium">
<div class="field">
<div class="shell">
<em class="disable">Date and time received:</em>
</div>
</div>
<div>
<div class="clip">
<em>11/27/2012 6:17:22 AM</em>
</div>
</div>
</li>
<li class="row medium alt">
<div class="field">
<div class="shell">
<em class="disable">Date and time filtered:</em>
</div>
</div>
<div>
<div class="clip">
<em>11/27/2012 6:17:22 AM</em>
</div>
</div>
</li>
<li class="row medium">
<!-- Connector Details -->
</li>
<li class="row medium alt">
<div class="field">
<div class="shell">
<em class="disable">First delivery attempt:</em>
</div>
</div>
<div>
<div class="clip">
<em>11/27/2012 6:17:23 AM</em>
</div>
</div>
</li>
<li class="row medium">
<div class="field">
<div class="shell">
<em class="disable">Final delivery attempt:</em>
</div>
</div>
<div>
<div class="clip">
<em>11/27/2012 6:17:23 AM</em>
</div>
</div>
</li>
<li class="row medium alt">
<div class="field">
<div class="shell">
<em class="disable">From IP address:</em>
</div>
</div>
<div>
<div class="clip">
<em>1.2.3.4 <unknown></em>
</div>
</div>
</li>
<li class="row medium">
<div class="field">
<div class="shell">
<em class="disable">To IP address:</em>
</div>
</div>
<div>
<div class="clip">
<em>4.3.2.1 <mail.example2.com> </em>
</div>
</div>
</li>
<li class="row medium alt">
<div class="field">
<div class="shell">
<em class="disable">Filtering results:</em>
</div>
</div>
<div>
<div class="clip">
<em>Passed Filtering</em>
</div>
</div>
</li>
<li class="row medium">
<div class="field">
<div class="shell">
<em class="disable">Delivery result:</em>
</div>
</div>
<div>
<div class="clip">
<span><em>Delivered: 470 2.4.0 <2342342345235> [InternalId=2321233] Queued mail for delivery</em></span>
</div>
</div>
</li>
</ul>
</fieldset>
</div>
날이 데이터를 변환하는 최선의 방법은 무엇입니까 : 지금 현재로
의 WPF WebBrowser 컨트롤 콘텐츠를 액세스하고 있습니까? 이것은 하나의 레코드 일뿐 더 많은 레코드가 추가됩니다.
편집을 테스트하려면 다음 코드를 사용하여 종료
: 사람이 더 효율적인 솔루션이있는 경우
HtmlAgilityPack.HtmlDocument docHAP = new HtmlAgilityPack.HtmlDocument();
docHAP.LoadHtml(doc.Body.InnerHtml.ToString());
foreach(HtmlNode emNode in docHAP.DocumentNode.SelectNodes("//em"))
{
MessageBox.Show(emNode.InnerText.ToString());
}
알려 주시기 바랍니다.
XPATH와 XSLT로 머리에 못을 박았습니다. 그 부분은 항상 나를 잡아. 위의 단 하나의 섹션조차도 예제를 제공 할 수 있습니까? – lordzero
내 수정 된 답변보기 희망이 도움이! –
확실히 올바른 방향으로 나를 가리키고 있습니다. this.wbControl.Document는 mshtml 문서이므로 LoadHtml 메서드는 작동하지 않습니다. 테스트를 위해 HAPP HtmlDocument atm으로 변환하는 방법을 찾으려고합니다. 즉, DocumentElement에 오류가 발생했지만 대신 DocumentNode를 사용하는 것처럼 보입니다. – lordzero