2012-10-10 2 views
0

Windows 8 용 메트로 앱을 만들려고합니다.이 앱에서 웹 사이트의 데이터를 구문 분석하려고합니다. 그것을 위해 나는 HtmlAgilityPack 1.4.6을 사용하고 있습니다. 하지만 '복용량 1.5kg에 대해 윈도우 8과 잘 어울리는 지 혼란스러워진다.' 'Xpath를 지원합니까?' Codeplex에 대한 혼란스러운 정보. 지금 그것은 Windows 8에서 작동하지만 HtmlNode.SelectNode 메서드를 볼 수없는 것 같습니다. Xpath가 작동하지 않으면 구문 분석을 수행 할 다른 옵션이 있습니까? 튜토리얼이나 예제로 안내해 줄 수 있습니까? ...HtmlAgilityPack 및 windows 8 winRT

너의

답변

2

당신은 LINQ의 API를 사용하십시오

var doc = new HtmlDocument(); 
doc.LoadHtml(contents); 
var programmes = doc.DocumentNode.Descendants().Where(d => d.GetAttributeValue("class", "") == "program") 

불행히도,이 API에 대한 많은 최신 정보를 찾을 수 없습니다.

+0

답변 주셔서 감사합니다! 방금 데이터를 XML로 변환하고 SgmlReader를 사용하여 파싱했습니다. LINQ API에 곧 테스트 할 수 있습니다 (호기심에서 벗어나). – DreamNet

0

나는 몇 주 전에 웹 페이지를 저장하는 알고리즘을 만들었고, 다음과 같은 몇 줄의 도움을 받아 img css js windows 8 메트로 - 응용 프로그램에서 html 코드를 구문 분석하는 데 대한 문제도 해결했습니다. (모든 이미지, HtmlDocument html에, CSS를 들어

IEnumerable<HtmlNode> imghrefNodes = html.DocumentNode.Descendants().Where(n => n.Name == "img"); 
foreach (HtmlNode img in imghrefNodes) 
{ 
    HtmlAttribute att = img.Attributes["src"]; 
    //in att.Value you can find your img url 
    //Here you can do everything what you want with all img links by editing att.Value 
} 

방금 ​​linkhrefsrcimg을 대체 할 수있다) 예를 연결합니다. 다른 노드들도 마찬가지입니다.

관련 문제