2011-10-03 3 views
0

C# http 모듈을 사용하여 웹 페이지에서 데이터를 제거하려고합니다. 나는 단지 원시 텍스트와 이미지을 원한다. 어떻게하면 다른 모든 것을 제거 할 수 있습니까?<img src=random.jpg> 및 <p>랜덤 텍스트</p> (html)

private static Regex reg = new Regex(@"<img src=\t????????"); 

public override void Write(byte[] buffer, int offset, int count) 
    { 
     byte[] data = new byte[count]; 
     Buffer.BlockCopy(buffer, offset, data, 0, count); 
     string html = System.Text.Encoding.Default.GetString(buffer); 

     html = reg.Replace(html, string.Empty); 


     byte[] outdata = System.Text.Encoding.Default.GetBytes(html); 
     _sink.Write(outdata, 0, outdata.GetLength(0)); 
    } 
+1

** 힌트 : ** XML 파서를 사용하십시오. – Blender

+0

[필수] (http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454) –

+4

@Blender - HTML 파서가 더 좋을 것입니다. 선택. – Oded

답변

1

HtmlAgilityPack과 같은 HTML 구문 분석기를 사용하십시오.

+0

여기에서와 동일 : http://stackoverflow.com/questions/100358/looking-for-c-html- 파서 –

+0

지금 사용하고 있지만 실제 페이지를 통해서만로드 할 수 있습니다. 버퍼에서 데이터를 가져 오는 방법 (페이지가 브라우저에서 렌더링되기 전에?) – tdjfdjdj

+0

재정의 할 수있는'Render' 메서드가 있습니까? (이것이 단지'Page's를위한 것인지 아닌지를 기억할 수 없습니다.) –

관련 문제