Skip to content
컴퓨터잡담
2009.08.05 12:55

네이버, 다음지식 php로 RSS 출력 만들기

조회 수 31009 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

네이버, 다음지식 php로 RSS 출력 만들기



RSS 수집을 하기위해 PHP로 RSS출력하는 소스를 만들어 보았습니다.


출력 내용은 제목, 링크주소, 태그 3개로 구성했습니다.


잘 나오는 것 같습니다.




 

 

 

 

<?


$a = file('http://kin.naver.com/open_home.php');

$bae = 0;

for($i=0;$i<count($a);$i++)
 {
 if(ereg('<div style="width:100%;">',$a[$i])) $cc = 1;
 if(ereg('<!-- //MAIN CONTENTS -->',$a[$i])) $cc = 0;

 if($cc == 1)
  {
  if(ereg('<td class="name"><a href="',$a[$i]))
    {
    $taga = explode('<td class="name"><a href="',$a[$i]);
    $taga = explode('</a>',$taga[1]);
    $tag[$bae] = $taga[0];
//    echo $tag[$bae];
    }
  if(ereg('<a href="/open100/db_detail.php?',$a[$i]))
    {
    $linka = explode('<a href="',$a[$i]);
    $linka = explode('" onMouseOver',$linka[1]);
    $link[$bae] = $linka[0];

    $titlea = explode(');">',$a[$i]);
    $titlea = explode('</a>',$titlea[1]);
    $title[$bae] = $titlea[0];

//    echo $link[$bae];
//    echo $title[$bae];

    $bae++;
    }
  }
 } //for_end

$content .= '<?xml version="1.0"?>'.chr(13);
$content .= '<rss version="2.0"><channel xmlns:psl="http://rainbow.daum.net/psl">'.chr(13);
$content .= '  <title>네이버지식 오픈사전</title>'.chr(13);
$content .= '  <link>http://kin.naver.com/open_home.php</link>'.chr(13);
$content .= '  <description>네이버지식 오픈사전</description>'.chr(13);
$content .= '  <pubDate></pubDate>'.chr(13);
$content .= '  <language>ko</language>'.chr(13);
$content .= '  <copyright>Copyright ⓒ NHN Corp. All Rights Reserved.</copyright>'.chr(13);
$content .= '  <webMaster>master@naver.com</webMaster>'.chr(13);
$content .= '  <generator>Naver</generator>'.chr(13);
$content .= '  <docs></docs>'.chr(13);
$content .= '  <ttl>20</ttl>'.chr(13);
$content .= '  <image>'.chr(13);
$content .= '  <url>http://static.naver.com/common/snb/090513/h_naver2.gif</url>'.chr(13);
$content .= '  <title>Naver RSS</title>'.chr(13);
$content .= '  <link>http://www.naver.com</link>'.chr(13);
$content .= '  </image>'.chr(13);

 

 

 

for($i=0;$i<count($title);$i++)
 {

  $content .= '  <item>'.chr(13);
  $content .= '  <title>'.$title[$i].'</title>'.chr(13);
  $content .= '  <link>http://kin.naver.com'.htmlspecialchars($link[$i]).'</link>'.chr(13);
  $content .= '  <description>'.$description.'</description>'.chr(13);
  $cate = explode(',',$tag[$i]);

  if($cate[0]) {$content .= ' <category>'.$cate[0].'</category>'.chr(13);}
  if($cate[1]) {$content .= ' <category>'.$cate[1].'</category>'.chr(13);}
  if($cate[2]) {$content .= ' <category>'.$cate[2].'</category>'.chr(13);}
  if($cate[3]) {$content .= ' <category>'.$cate[3].'</category>'.chr(13);}
  if($cate[4]) {$content .= ' <category>'.$cate[4].'</category>'.chr(13);}

//  for($ii=0;$ii<count($cate);$i++)
//   { echo '<category>'.$cate[$ii].'</category>'; }


  $content .= '</item>'.chr(13);
 }//for_end


$content .= '</channel>'.chr(13);
$content .= '</rss>'.chr(13);

 

?>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

<?
$now=time();

$a = file('http://k.daum.net/qna/openknowledge/list.html?category_id=D');

$bae = 0;

for($i=0;$i<count($a);$i++)
 {
 if(ereg('<dl class="bList listTbar">',$a[$i])) $cc = 1;
 if(ereg('<!-- [openList] End -->',$a[$i])) $cc = 0;

 if($cc == 1)
  {
  if(ereg('class="bB12">',$a[$i]))
    {
    $taga = explode('class="bB12">',$a[$i]);
    $taga = explode('</a></dd>',$taga[1]);
    $tag[$bae] = $taga[0];
//    echo $tag[$bae];
    }
  if(ereg('<a href="/qna/openknowledge/view.html?',$a[$i]))
    {
    $linka = explode('<a href="',$a[$i]);
    $linka = explode('">',$linka[1]);
    $link[$bae] = $linka[0];

    $titlea = explode('">',$a[$i]);
    $titlea = explode('</a>',$titlea[1]);
    $title[$bae] = $titlea[0];

//    echo $link[$bae];
//    echo $title[$bae];

    $bae++;
    }
  }
 } //for_end

 

 

 

//header('Content-Type: text/xml; charset=euc-kr');

$content .= '<?xml version="1.0"?>'.chr(13);
$content .= '<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/">'.chr(13);
$content .= '  <channel>'.chr(13);
$content .= ' <title>다음지식 오픈사전</title>'.chr(13);
$content .= ' <link>http://k.daum.net/qna/</link>'.chr(13);
$content .= ' <description>다음지식 오픈사전입니다.</description>'.chr(13);
$content .= ' <language>ko</language>'.chr(13);
$content .= ' <pubDate>'.date("D, d M Y H:i:s",$now).'</pubDate>'.chr(13);
$content .= ' <lastBuildDate>'.date("D, d M Y H:i:s",$now).'</lastBuildDate>'.chr(13); 
$content .= ' <generator>Urin79. Daum_openDIC_RSS</generator>'.chr(13);

 

for($i=0;$i<10;$i++)
 {

  $content .= ' <item>'.chr(13);

  $content .= '  <title>'.$title[$i].'</title>'.chr(13);
  $content .= '  <link>http://k.daum.net'.htmlspecialchars($link[$i]).'</link>'.chr(13);
  $content .= '  <description>'.$title[$i].'</description>'.chr(13);


  $cate = explode(',',$tag[$i]);

  if($cate[0]) {$content .= '  <category>'.$cate[0].'</category>'.chr(13);}
  if($cate[1]) {$content .= '  <category>'.$cate[1].'</category>'.chr(13);}
  if($cate[2]) {$content .= '  <category>'.$cate[2].'</category>'.chr(13);}
  if($cate[3]) {$content .= '  <category>'.$cate[3].'</category>'.chr(13);}
  if($cate[4]) {$content .= '  <category>'.$cate[4].'</category>'.chr(13);}

//  for($ii=0;$ii<count($cate);$i++)
//   { echo '<category>'.$cate[$ii].'</category>'; }


  $content .= ' </item>'.chr(13).chr(13);
 }//for_end

 

$content .= '</channel>'.chr(13);
$content .= '</rss>'.chr(13);


print $content;

// $file_pointer = fopen("../../temp/daum_man_rss.xml", "w");
//  $context = $content;
// fwrite($file_pointer, $context);
// fclose($file_pointer);


?>

 

 

 

로그인 후 댓글쓰기가 가능합니다.

?

  1. 네이버 많이 본 뉴스 PHP로 RSS 출력 만들기

  2. 네이버 만화 PHP로 RSS 출력 만들기

  3. 네이버, 다음지식 php로 RSS 출력 만들기

  4. 인물탐구 - 구본호 주식시장의 황금손

  5. 출산관련 정부정책 어떤것이 있나?

  6. 인물탐구 - 홍석현 손댔다 하면 ‘상한가’

  7. 의사협회, 동의보감 폄하는 자신없는 행동을 하는 이유

  8. 의료실비보험 100% 보장이 안되는 이유

  9. 게임처럼 주식투자하기 - 에스티씨라이프

  10. 하나님은 자신이외의 다른신을 왜 싫어하는가?(십계명1)

Board Pagination Prev 1 ... 225 226 227 228 229 ... 235 Next
/ 235

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소