2016-11-04 1 views
0

url의 홈페이지에서 데이터를 파싱하고 싶습니다. 이 URL을 볼 수있는 것은 HTML 파일 내가 아래를 참조 :PHP 언어로 HTML 파일에서 DOM 객체를 만들려면 어떻게해야합니까?

// Create a DOM object from a HTML file 
$html = file_get_html('test.htm'); 

그래서 난 그냥

include "simple_html_dom.php"; 
$html = file_get_html('eecs.kookmin.ac.kr/site/computer/notice.htm'); 
echo $html->plaintext; 

아래의 코드를 입력 오류 메시지는 다음과 같습니다

Error message Warning: file_get_contents(eecs.kookmin.ac.kr/site/computer/notice.ht‌​m): failed to open stream: No such file or directory in C:\Bitnami\wampstack-5.6.27-0\apache2\htdocs\simple_html_dom‌​.php on line 76

내가 무엇을해야 해야 할 것?

+1

좋은 DOM 파서는 http://php.net/manual/en/class.domdocument.php입니다. – scaisEdge

+0

안녕하세요, 호세,이 홈페이지에서 텍스트 만 추출하고 싶습니다. (http://eecs.kookmin.ac.kr/ 사이트/컴퓨터/notice.htm)하지만 서버에이 PHP 파일을 구현하면 오류 메시지가 발생합니다 경고 : file_get_contents (eecs.kookmin.ac.kr/site/computer/notice.htm) : 스트림을 열지 못했습니다 : 해당 파일이 없습니다. 또는 디렉토리 C : \ Bitnami \ wampstack-5.6.27-0 \ apache2 \ htdocs \ simple_html_dom.php on line 76 – Hansam

+0

(eecs.kookmin.ac.kr/site/computer/notice.ht m)이 링크는 아닙니다. url하지만 html 파일. PHP Simple HTML DOM Parser Manual을 읽었습니다. 이 설명서의 내용은 // HTML 파일에서 DOM 객체 만들기 $ html = file_get_html ('test.htm'); 나는 $ html = file_get_html ('eecs.kookmin.ac.kr/site/computer/notice.htm')이라고 생각한다; 이 부분은 특히 오류 ('eecs.kookmin.ac.kr/site/computer/notice.htm') – Hansam

답변

0

스누피 클래스 (https://sourceforge.net/projects/snoopy)를 사용하여 HTML 코드를 가져올 수 있습니다. ,

<!DOCTYPE html> 
<html> 
    <head> 
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=euc-kr"> 
    <META HTTP-EQUIV="Content-language" CONTENT="ko"> 
    </head> 
    <body> 
<?php 
require("Snoopy.class.php"); // ◄■■ GET SNOOPY FROM https://sourceforge.net/projects/snoopy 
$snoopy = new Snoopy; 
$snoopy->fetch("http://eecs.kookmin.ac.kr/site/computer/notice.htm"); 
$html = mb_convert_encoding($snoopy->results, "UTF-8", "EUC-KR"); // ◄■■ GET HTML CODE. 
echo "<textarea rows='25' cols='80'>$html</textarea>"; // ◄■■ DISPLAY THE HTML. 
echo $html; // ◄■■ DISPLAY THE WEBPAGE. 
?> 
    </body> 
</html> 

스누피 클래스는 하나 개의 파일입니다 : 다음 코드는 PHP 파일에서하는 <textarea> 태그의 내부의 HTML 코드는, 다음이 페이지 자체를 표시 복사 - 붙여 넣기 다음 코드를 표시하고 브라우저에서 엽니 다 파일이 PHP 파일과 동일한 디렉토리에 있는지 확인하십시오.

+0

호세 감사합니다! 당신의 친절한 대답은 당신의 방법으로 시도 할 것입니다. 문제가 생기면 질문 하나해도 될까요? – Hansam

+0

@Hansam, 물론, 질문하십시오. –

+0

스누피는 정말 죽은 프로젝트입니다. 대신 [guzzle] (https://github.com/guzzle/guzzle)을 사용해보십시오. – pguardiario