>> Read No. 3237 article  
[PHP] 저번에꺼 이어서 신문만평 가져오기 24개까지
해봤습니다.

등록 2003-01-10 03:14:00     조회 7
이름 0172    

		사용한 함수는 몇 개 안 됩니다.
이용한 원리도 간단합니다.
저는 아는게 별로 없어서 소스가 약간 허접합니다.
그리고 아직 몇일 밖에 돌려 보지 않아서 약간의 버그가 있을지 모릅니다.
메이져 신문은 검색 과정이 쬐끔 까다로웠으나 나머지들은 엄청 간단합니다.
그리고 너무 많은 페이지를 읽어오다 보니 한번 실행하는데 시간이 꽤 걸립
니다.
그래서 파일에 저장을 해 두게끔 했습니다.emoticon
작동되는 모습은 제 홈에 오면 볼 수 있습니다.
 <?
 //
// 각 페이지의 패턴을 분석한 최근 신문만평 가져오기 
// made by 0172 
// http://0172.kr.kg (http://lp1001.snu.ac.kr/~parkmc2) // last update 2003.01.10
//                                                                   
 
    //////////////////////// 날짜설정
 $now = time();
$yesterday = $now - 86400;
$today_date = date("Ymd",$now);
$today_date_1 = date("Ym/d",$now);
$today_date_2 = date("Y/m",$now);
$today_date_3 = date("Y/md",$now);
$yesterday_date = date("Ymd",$yesterday);
$yesterday_date_1 = date("Ym/d",$yesterday);
$yesterday_date_2 = date("Y/m",$yesterday);
$yesterday_date_3 = date("Y/md",$yesterday);
 //////////////////////////////////////// 한겨레 비교적 간단한 편
 $url = "http://www.hani.co.kr/section-011000000/home01.html";
$data = join("", file($url));
$temp = split("href|src|background",$data);
$size = sizeof($temp);
$mark = chr(34); // 큰따옴표
$mark_1 = chr(32); // 공백
$mark_2 = chr(39); // 작은 따옴표
for($i=1; $i < $size; $i++){
    $seek = strstr($temp[$i],"=$mark"); // (=")로 시작하는 문자욜 검색
    $seek = substr("$seek",0,strpos($seek,"gm.jpg")+2); // (gm.jpg)로
끝나는 문자열 검색해서 (.jpg)전까지 추출
    $seek = ereg_replace("=","",$seek);      //
    $seek = ereg_replace("$mark","",$seek);  // 불필요한 (=)과 (")를 없
애고
    $seek = ereg_replace("gm","gb.jpg",$seek); // (gm)을 (gb.jpg)로 바
꾼다
    if ( strlen("$seek") != 0 ) { // 필요없는 문자열 잘라내고
         $seek_1 = "<p>:: 한겨레 (장봉군) ::</p><pre><img
src='$seek'</src></pre>";
    }
}
 /////////////////////// 조선일보(신경무)는 특이해서 루트를 여러번 돌려
줘야 한다
 $url = "http://manhwa.chosun.com";
$data = join("", file($url));
$temp = split("href|src|background",$data);
$size = sizeof($temp);
 $mark = chr(34); // 큰따옴표
$mark_1 = chr(32); // 공백
$mark_2 = chr(39); // 작은 따옴표
for($i=1; $i < $size; $i++){
    $seek = strstr($temp[$i],"/site/data/html_dir/");      // 가능성 있
는 링크 검색
    $seek = substr("$seek",0,strpos($seek,"$mark"));
    $exact_1 = str_replace("$today_date","seek",$seek);
    $exact_2 = str_replace("$yesterday_date","seek",$seek);
    if ( $seek != $exact_1 or $seek != $exact_2 ) {        // 날짜 비교
         $j = $j+1;
         $url_real[$j] = "$url$seek";                     // 오늘 날짜
와 어제날짜 링크 추출
    }
}
 for($qqq=1; $qqq < $j+1; $qqq++) {                        // 추출한 링
크 페이지 읽어오기
$data = join("", file($url_real[$qqq]));
$temp = split("href|src|background",$data);
$size = sizeof($temp);
$mark = chr(34);
$mark_1 = chr(32);
$mark_2 = chr(39);
for($i=1; $i < $size; $i++){
    $seek = strstr($temp[$i],"/site/data/img_dir/");          // 이미
지 검색
    $seek = substr("$seek",0,strpos($seek,".gif"));
    if ( strlen("$seek") != 0 ) {
         $exact_1 = str_replace("man","seek",$seek);         // 만평 이
미지는 파일명에 man이 들어있으므로...
         if ( $seek != $exact_1 ) {                          // 만평 이
미지만 걸러내기
              $seek_2 = "<p>:: 조선일보 (신경무) ::</p><pre><img
src='$url$seek.gif'></src></pre>";
         }
    }
}
}
 ///////////////////////////////////// 중앙일보도 나름대로 검색하기 까다
로운 편
 $url
= "http://www.joins.com/general/today/t_cartoon/list/general_today_t_ca
rtoon_list.html";
$data = join("", file($url));
$temp = split("href|src|background",$data);
$size = sizeof($temp);
$today = 0;
$yesterday = 0;
for( $i=1; $i < $size; $i++ ) {
     $seek_today = str_replace("$today_date","",$temp[$i]);
     if ( $seek_today != $temp[$i] ) {
          $seek = strstr($temp[$i],"$today_date");
          $seek = substr($seek,0,strpos($seek,"4110011501152.html"));
          $today = $today+1;
          $seek_link_today[$today] = $seek;
     } else {
            $seek_yesterday = str_replace("$yesterday_date","",$temp
[$i]);
            if ( $seek_yesterday != $temp[$i] ) {
                 $seek = strstr($temp[$i],"$yesterday_date");
                 $seek = substr($seek,0,strpos($seek,"4110011501152"));
                 $yesterday = $yesterday+1;
                 $seek_link_yesterday[$yesterday] = $seek;
            }
     }
}
 if ( $today == 2 ) {
     $url = "http://www.joins.com/general/$today_date_1/
$seek_link_today[$today]4110011501152.html";
} else {
       if ( $today == 1 ) {
            $url = "http://www.joins.com/general/$today_date_1/
$seek_link_today[$today]4110011501152.html";
       } else {
              if ( $yesterday == 2 ) {
                   $url = "http://www.joins.com/general/
$yesterday_date_1/$seek_link_yesterday[$yesterday]4110011501152.html";
              } else {
                     if ( $yesterday == 1 ) {
                          $url = "http://www.joins.com/general/
$yesterday_date_1/$seek_link_yesterday[$yesterday]4110011501152.html";
                     }
              }
       }
}
 $data = join("", file($url));
$temp = split("href|src|background",$data);
$size = sizeof($temp);
 for( $i=1; $i < $size; $i++ ) {
     $seek = strstr($temp[$i],"component/htmlphoto_mmdata");
     if ( strlen($seek) != 0 ) {
          $seek = substr($seek,0,strpos($seek,".GIF"));
          $seek = "http://www.joins.com/$seek.GIF";
          $seek_3 = "<p>:: 중앙일보 (김상택) ::</p><pre><img
src='$seek'</src></pre>";
     }
}
 ///////////////////////////////// 경향신문은 의외로 간단하다emoticon
 $url = "http://www.khan.co.kr/";
$data = join("", file($url));
$temp = split("href|src|background",$data);
$size = sizeof($temp);
 for( $i=1; $i < $size; $i++ ) {
     $seek = strstr($temp
[$i],"http://www.khan.co.kr/mx/cartoon/img_kym");
     if ( strlen($seek) != 0 ) {
          $seek = substr($seek,0,strpos($seek,".gif"));
          $seek_4 = "<p>:: 경향신문 (김용민) ::</p><pre><img
src='$seek'</src></pre>";
     }
}
 ////////////////////////////////////////// 문화일보는 더 간단하다
 $url = "http://www.munhwa.co.kr/cartoon/cartoon.html";
$data = join("", file($url));
$seek = strstr($data,"man/");
$seek = substr($seek,0,strpos($seek,".jpg"));
if ( strlen($seek) != 0 ) {
     $seek = "http://www.munhwa.co.kr/cartoon/$seek.jpg";
     $seek_5 = "<p>:: 문화일보 (이재용) ::</p><pre><img
src='$seek'</src></pre>";
}
 ////////////////////////////////////// 노동일보도 간단하군...
 $url = "http://www.laborw.com/admin/board/cartoon.html?
tablename=cartoon";
$data = join("", file($url));
$seek = strstr($data,"data/cartoon");
$seek = substr($seek,0,strpos($seek,".gif"));
if ( strlen($seek) != 0 ) {
     $seek = "http://www.laborw.com/admin/board/$seek.gif";
     $seek_6 = "<p>:: 노동일보 (강동헌) ::</p><pre><img
src='$seek'</src></pre>";
}
 ////////////////////////////////////// 동아일보
 $url = "http://www.donga.com/fbin/cartoon?n=nadaero";
$data = join("", file($url));
$seek = strstr($data,"http://www.donga.com/docs/cartoon/nadaero/");
$seek = substr($seek,0,strpos($seek,".gif"));
if ( strlen($seek) != 0 ) {
     $seek = "$seek.gif";
     $seek_7 =  "<p>:: 동아일보 나대로 선생 (이홍우) ::</p><pre><img
src='$seek'</src></pre>";
}
 ////////////////////////////////////// 한국일보
 $url = "http://www2.hankooki.com/entertain/cartoon/10.htm";
$data = join("", file($url));
$seek = strstr($data,"http://www2.hankooki.com/entertain/cartoon/img");
$seek = substr($seek,0,strpos($seek,".jpg"));
if ( strlen($seek) != 0 ) {
     $seek = "$seek.jpg";
     $seek_8 =  "<p>:: 한국일보 한국만평 ::</p><pre><img
src='$seek'</src></pre>";
}
 ////////////////////////////////////// 대한매일
 $url = "http://www.kdaily.com/cartoon/manpyung/$today_date_2/
$today_date.gif";
$data = @fopen($url,"r");
if ( strlen($data) != 0 ) {
     $seek_9 =  "<p>:: 대한매일 (백무현) ::</p><pre><img
src='$url'</src></pre>";
     fclose($data);
} else {
       $url = "http://www.kdaily.com/cartoon/manpyung/
$yesterday_date_2/$yesterday_date.gif";
       $data = @fopen($url,"r");
       if ( strlen($data) != 0 ) {
            $seek_9 =  "<p>:: 대한매일 (백무현) ::</p><pre><img
src='$url'</src></pre>";
            fclose($data);
       }
}
 ////////////////////////////////////// 국민일보
 $url = "http://www.kukminilbo.co.kr/";
$data = join("", file($url));
$seek = strstr($data,"online_image");
$seek = substr($seek,0,strpos($seek,"/cartoon.jpg"));
if ( strlen($seek) !=0 ) {
     $seek_10 = "<p>:: 국민일보 국민만평 ::</p><pre><img
src='http://www.kukminilbo.co.kr/$seek/cartoon.jpg'</src></pre>";
}
 ////////////////////////////////////// 경인일보
 $url = "http://www.kyeongin.com/carton/manpan_view.asp";
$data = join("", file($url));
$seek = strstr($data,"http://www.kiib.co.kr/carton/");
$seek = substr($seek,0,strpos($seek,".jpg"));
if ( strlen($seek) != 0 ) {
     $seek_11 = "<p>:: 경인일보 경인만평 ::</p><pre><img
src='$seek.jpg'</src></pre>";
}
 ////////////////////////////////////// 강원일보
 $url = "http://www.kwnews.co.kr/page/cartoon.asp";
$data = join("", file($url));
$seek = strstr($data,"http://www.kwnews.co.kr/cartoon/");
$seek = substr($seek,0,strpos($seek,".gif"));
if ( strlen($seek) != 0 ) {
     $seek_12 = "<p>:: 강원일보 강원만평 ::</p><pre><img
src='$seek.gif'</src></pre>";
}
 ////////////////////////////////////// 강원도민일보
 $url = "http://www.kado.net/centermenu-01/cartoon.jsp?
seq_no=13&refer=131";
$data = join("", file($url));
$seek = strstr($data,"webzine_img/13/kd_comic_manhwa");
$seek = substr($seek,0,strpos($seek,".jpg"));
if ( strlen($seek) != 0 ) {
     $seek_13 = "<p>:: 강원도민일보 ::</p><pre><img
src='http://www.kado.net/$seek.jpg'</src></pre>";
}
 ////////////////////////////////////// 중도일보
 $url = "http://www.joongdo.com/sepcial/cartoon.html";
$data = join("", file($url));
$temp = split("href|src|SRC|background",$data);
$size = sizeof($temp);
 for( $i=1; $i < $size; $i++ ) {
     $seek = strstr($temp[$i],"admin/sepcial/file/");
     if ( strlen($seek) != 0 ) {
          $exact = str_replace(".jpg","",$seek);
          if ( $seek != $exact ) {
               $seek = substr($seek,0,strpos($seek,".jpg"));
               $seek_14 = "<p>:: 중도일보 (전호연) ::</p><pre><img
src='http://www.joongdo.com/$seek.jpg'</src></pre>";
          }
     }
}
 ////////////////////////////////////// 광주일보
 $seek_15 = "<p>:: 광주일보 광일만평 ::</p><pre><img
src='http://www.kwangju.co.kr/etcfolder/만평.jpg'</src></pre>";
 ////////////////////////////////////// 광주타임스
 $url = "http://www.kjtimes.co.kr/picture.html?section=평";
$data = join("", file($url));
$seek = strstr($data,"upimages/sphoto");
$seek = substr($seek,0,strpos($seek,".jpg"));
if ( strlen($seek) != 0 ) {
     $seek_16 = "<p>:: 광주타임스 (김복룡) ::</p><pre><img
src='http://www.kjtimes.co.kr/$seek.jpg'</src></pre>";
}
 ////////////////////////////////////// 전라일보
 $url = "http://211.230.150.55/news/cartoon.php?code4=CR0100009";
$data = join("", file($url));
$seek = strstr($data,"news/cartoon/man");
$seek = substr($seek,0,strpos($seek,".jpg"));
if ( strlen($seek) != 0 ) {
     $seek_17 = "<p>:: 전라일보 전일만평 ::</p><pre><img
src='http://211.230.150.55/$seek.jpg'</src></pre>";
}
 ////////////////////////////////////// 전남일보
 $seek = "p911.jpg";
$url = "http://www.jnilbo.com/upimages/sphoto/$today_date$seek";
$data = @fopen($url,"r");
if ( strlen($data) != 0 ) {
     $seek_18 = "<p>:: 전남일보 전일만평 ::</p><pre><img
src='$url'</src></pre>";
     fclose($data);
} else {
       $url = "http://www.jnilbo.com/upimages/sphoto/
$yesterday_date$seek";
       $data = @fopen($url,"r");
       if ( strlen($data) != 0 ) {
            $seek_18 = "<p>:: 전남일보 전일만평 ::</p><pre><img
src='$url'</src></pre>";
            fclose($data);
       }
}
 ////////////////////////////////////// 부산일보
 $url = "http://news.busanilbo.com/n2000/cartton/cartton_12.html";
$data = join("", file($url));
$seek = strstr($data,"electron/pusan_news/CARTOON");
$seek = substr($seek,0,strpos($seek,".jpg"));
if ( strlen($seek) != 0 ) {
     $seek = "http://news.busanilbo.com/$seek.jpg";
     $seek_19 =  "<p>:: 부산일보 부일만평 ::</p><pre><img
src='$seek'</src></pre>";
}
 ////////////////////////////////////// 대구매일신문
 $url = "http://www.imaeil.com/cgi-bin/news/palgong_n";
$data = join("", file($url));
$seek = strstr($data,"news/man");
$seek = substr($seek,0,strpos($seek,".gif"));
if ( strlen($seek) != 0 ) {
     $seek_20 = "<p>:: 대구매일신문 ::</p><pre><img
src='http://www.imaeil.com/$seek.gif'</src></pre>";
}
 ////////////////////////////////////// 경북일보
 $seek_21 = "<p>:: 경북일보 경북만평 ::</p><pre><img
src='http://www.kyongbuk.co.kr/admintools/upload/cartoon/6_22.gif'</src
></pre>";
 //////////////////////////////// 경남도민일보는 어쩔 수 없다 기냥 이렇
게 해야지 뭐
 $seek_22 = "<p>:: 경남도민일보 ::</p><pre><img
src='http://dominilbo.co.kr/cartoon/m$today_date.jpg'</src></pre>";
 ////////////////////////////////////// 국제신문
 $url = "http://www.kookje.co.kr/cartoon/cartoon_01.cfm";
$data = join("", file($url));
$seek = strstr($data,"data_images");
$seek = substr($seek,0,strpos($seek,".jpg"));
if ( strlen($seek) !=0 ) {
     $seek_23 = "<p>:: 국제신문 (안기태) ::</p><pre><img
src='http://www.kookje.co.kr/cartoon/$seek.jpg'</src></pre>";
}
 ////////////////////////////////////// 제주일보
 $url = "http://www.jejunews.com/funny/cartoon/cartoon_ex.php";
$data = join("", file($url));
$seek = strstr($data,"input_admin/funny/cartoon/manh_files");
$seek = substr($seek,0,strpos($seek,".jpg"));
if ( strlen($seek) != 0 ) {
     $seek_24 = "<p>:: 제주일보 ::</p><pre><img
src='http://www.jejunews.com/$seek.jpg'</src></pre>";
}
 ////////////////////////////////////////// 긁어오는 시간 재기
 $end = time();
$parse_time = $end - $start;
 $content = "$seek_1$seek_2$seek_3$seek_4$seek_5$seek_6$seek_7$seek_8
$seek_9$seek_10$seek_11$seek_12$seek_13$seek_14$seek_15$seek_16$seek_17
$seek_18$seek_19$seek_20$seek_21$seek_22$seek_23$seek_24";
 $fp = fopen("manpyoung.txt","w");
fwrite($fp,$content);
fclose($fp);
 $url = "http://lp1001.snu.ac.kr/~parkmc2/manpyoung.txt";
$data = join("", file($url));
echo "$data";
echo "<pre>Parsing time = $parse_time sec :: 너무 오래 걸리나emoticon 그러니
까 파일로 저장해 놓지...</pre>";
 ?>
이름
암호
  목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 1.45 초 ] 작업시간: [ 0.2 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1791040118
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.