Monday, November 27, 2006
PHP] HTML 본문 텍스트 추출, 태그 제거; HTML to TEXT; Strip Tags
원래는 정규식이나 Perl 로, HTML에서 텍스트 추출, 즉 "태그 삭제"를 해보려고 했는데, 아무리 해도 되지 않았습니다. 물론 간단하고 잘 정돈된 HTML 파일은 추출이 되는데, 좀 복잡하고 오류가 있거나 비표준이거나, 또는 태그 사이에 줄바꿈이 있다거나 하면 추출하지 못했습니다.
PHP 로 해보았더니 비교적 잘 되었습니다. 그렇지만 완벽하지는 않고, CSS 선언 부분을 제거하지 못하는 등의 문제는 여전히 있었습니다.
HTML 전문 언어인 PHP로도 어려운 걸 보니, 역시 본문 추출이라는 것이 보통 일이 아닌 것 같습니다.
파일명: strip_tags.php
PHP를 설치한 후(여기서는 윈도우용을 설치했음), 도스창(명령 프롬프트;CMD.EXE)에서
이렇게 해주면, test.html 이라는 파일에서 본문만 추출되어 화면으로 출력됩니다.
추출 결과를 텍스트 파일로 저장하기 위해서는
이렇게 하면 됩니다.
웹 브라우저에서 HTML 파일을 부른 후, Ctrl+A 키를 누르면 전체 텍스트가 선택됩니다.
Ctrl+C 키를 눌러 복사한 후, 메모장 등의 편집기에서 Ctrl+V 키로 붙여 넣으면, 본문만 추출됩니다.
가장 원시적인 방법이지만, 가장 완벽하게 텍스트 추출을 할 수 있습니다.
또는 브라우저의,
메뉴: 파일 > 다른 이름으로 저장
에서, "모든 웹 페이지(*.htm;*.html)" 가 아닌
"텍스트 파일(*.txt)" 를 선택하면, 태그가 제거된 텍스트만 저장됩니다.
PHP 로 해보았더니 비교적 잘 되었습니다. 그렇지만 완벽하지는 않고, CSS 선언 부분을 제거하지 못하는 등의 문제는 여전히 있었습니다.
HTML 전문 언어인 PHP로도 어려운 걸 보니, 역시 본문 추출이라는 것이 보통 일이 아닌 것 같습니다.
HTML2TXT: HTML 웹문서의 TAG 지우고 본문만 남기기
파일명: strip_tags.php
<?php
$s = strip_tags(join('',file($argv[1])));
print $s;
?>
$s = strip_tags(join('',file($argv[1])));
print $s;
?>
PHP를 설치한 후(여기서는 윈도우용을 설치했음), 도스창(명령 프롬프트;CMD.EXE)에서
php strip_tags.php test.html
이렇게 해주면, test.html 이라는 파일에서 본문만 추출되어 화면으로 출력됩니다.
추출 결과를 텍스트 파일로 저장하기 위해서는
php strip_tags.php test.html > out.txt
이렇게 하면 됩니다.
수동으로 태그 삭제 방법
웹 브라우저에서 HTML 파일을 부른 후, Ctrl+A 키를 누르면 전체 텍스트가 선택됩니다.
Ctrl+C 키를 눌러 복사한 후, 메모장 등의 편집기에서 Ctrl+V 키로 붙여 넣으면, 본문만 추출됩니다.
가장 원시적인 방법이지만, 가장 완벽하게 텍스트 추출을 할 수 있습니다.
또는 브라우저의,
메뉴: 파일 > 다른 이름으로 저장
에서, "모든 웹 페이지(*.htm;*.html)" 가 아닌
"텍스트 파일(*.txt)" 를 선택하면, 태그가 제거된 텍스트만 저장됩니다.
tag: php
PHP
tag: html
HTML | CSS | 자바스크립트 JavaScript
<< Home