>> Edit article
이름
제목
패스워드
사용한 함수는 몇 개 안 됩니다. 이용한 원리도 간단합니다. 저는 아는게 별로 없어서 소스가 약간 허접합니다. 그리고 아직 몇일 밖에 돌려 보지 않아서 약간의 버그가 있을지 모릅니다. 메이져 신문은 검색 과정이 쬐끔 까다로웠으나 나머지들은 엄청 간단합니다. 그리고 너무 많은 페이지를 읽어오다 보니 한번 실행하는데 시간이 꽤 걸립 니다. 그래서 파일에 저장을 해 두게끔 했습니다.^^ 작동되는 모습은 제 홈에 오면 볼 수 있습니다. <? // // 각 페이지의 패턴을 분석한 최근 신문만평 가져오기 // 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>"; } } ///////////////////////////////// 경향신문은 의외로 간단하다^^ $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 :: 너무 오래 걸리나^^ 그러니 까 파일로 저장해 놓지...</pre>"; ?>
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved