2009-12-21 3 views
3

웹 페이지에서 일부 데이터를 가져와야합니다. 페이지의 HTML 코드를 분석 한 후 고유 한 테이블 ID가있는 테이블에 필요한 데이터가 포함되어 있음을 발견했습니다. HTML 규칙인지 아닌지는 모르겠지만, 어쨌든 구문 분석에는 매우 좋습니다. Perl을 사용하여 HTML 테이블 데이터를 추출하려면 어떻게해야합니까?

테이블의 데이터

아래로 배치 (다양한 속성 및 태그가 당신에게 명확한 "데이터 구조"를 제공하기 위해 생략되었다)
<table .... id = "tablename" .... > 
    <tr> 
     <td .... >filed1</td> 
      .... 
     <td .... >filedn</td> 
    </tr> 
     #several "trs" here 
    <tr> 
     <td .... >filed1</td> 
      .... 
     <td .... >filedn</td> 
    </tr> 
</table> 

그래서 내 질문 펄의 HTML 파서를 사용하는 방법입니다 이 경우 나의 요구를 충족시키는 유틸리티.

미리 감사드립니다.

답변

-1

켄 맥팔란의 Parsing HTML with HTML::ParserPerl 저널에서 확인하십시오. 당신이 말하는 구문 분석기인지는 모르겠지만, 원하는대로 할 수있는 것처럼 보입니다. 아니면 최소한 올바른 방향으로 가리켜 줄 것입니다. 정확하게 당신이 찾고있는 것을 같은

my $html = '<html code....'; 

$html =~ s/^.*(<table id="tablename">.*<\/table>).*/$1/s; 
+0

HTML :: Parser를 사용하지 않아도됩니다. 작업을 처리 할 수있는 도구가 많이 있습니다. –

-4

당신은 이런 식으로 뭔가를 시도 할 수 있습니다.

+2

http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454 –

관련 문제