Skip to content
리눅스/BSD

TWOA 발표자료입니다.

by 흑엽 posted Sep 23, 2008
080920~21
사단법인 자유 오픈소스 소프트웨어 연합회에서 후원하는
The Way Of Approaching행사에 다녀왔습니다

제작자:히로스에료코_팬-_-v 흑엽
os: 리눅/bsd
필요한 명령어: wget,lynx,iconv(입문자라 모듈대신 명령어로 때웠습니다.)
사용언어: perl
모듈:사용안함(하수인 관계로 아는게 없어서요....)

펄 해커쏜 분들이 없었다면 하룻밤에 못 만들었을 겁니다. 
새벽까지 괴롭혀서 죄송합니다;;; 저의 과도한 질문 ‹š문에 해커쏜 프로젝트가 늦어진거 같네요--;;
하지만 또 그런기회가 있다면 당장갈꺼에요^_^;;; 진님네로ㄱㄱ?

기능:
1.일본드라마 시청자 게시판 게시물 본문만 추출후 저장.
2.추출된 본문을 번역기를 통해 일괄 번역.
3.한국어로 번역된 자료를 검색.
코드 동영상설명

 

1_web_get.pl   게시물을 추출합니다. 
#!/usr/bin/perl

use strict;
use warnings;

for ( 1..43 )
{
`lynx -source http://www.tbs.co.jp/motokare/bbs/h_d10_r$_.html >  $_.html`;
#모토카레 시청자 게시판 내용을 가져오며 파일명을 간결하게 바꿈
}


head  
iconv로 utf8로 문자셋을 변경하며 그에따라 웹페이지도 깨지지 않기 위해 매타태그를 넣어줌
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />


make.pl   추출한 웹페이지에서 본문만 남기고 제거합니다.
#!/usr/bin/perl

use strict;
use warnings;

my $fileName = shift( @ARGV );

if( -d $fileName )
  { die "$fileName 은 폴더야.n"; }
-e $fileName || die "$fileName 은 읽을수 없어 허걱.n";
-T $fileName || die "$fileName 은 텍스트 파일이 아니야.n";
open( fileHandle, $fileName ) || die "$fileName 을 못열겠어.n";

# my $Sline = '';
# while(<fileHandle>) {
# chomp; $Sline .= $_;
# }
#느린 읽기 방법

 my @Aline = <fileHandle>; #파일을 한줄로 읽어서 배열에 저장
 close( fileHandle );  # 다 읽었으니 닫습니다. 이제 쓸일없음.

 my $Sline = join('', @Aline); # 배열을 구분기호없이 즉 ''으로 해서
                              # 일반변수에 저장


$Sline =~ s/n//g;   #줄바꿈 제거하여 한줄html을 만듬

$Sline =~ s!<table width="100" height="5" border="0" cellpadding="0" cellspacing="0">                    <tr>                       <td><img src="../img/sq.gif" width="1" height="1"></td>                    </tr>                  </table>                  <table width="340" border="0" cellpadding="0" cellspacing="10" bgcolor="#FFFCF4">                    <tr>                       <td class="f_default_medium">!n$&!g;
#게시물 내용이 들어있는 table 태그의 시작에서 줄바꿈
# s!로 특수 기호를 무력화 한후 /대신 !로 구분을 하며
# $&기호는 그전 !~!사이 범위의 문자열을 말함

$Sline =~ s/d{2}:d{2}:d{2}</font></td>                    </tr>                  </table>/$&n/g;
#게시물과 관련된 table 태그 끝에서 줄바꿈


my $head = `cat ./head`;
print $head; #utf-8로 변환된 일본어를 웹페이지에서 표시하기 위해 매타태그를 출력

@Aline = split( /n/, $Sline);
#줄바꿈으로 구별된 table 태그를 루프로 돌려 검증하기 위해 배열로 저장함.
  foreach my $elem ( 0..$#Aline)
  {
        $_=$Aline[$elem];
       if ( /[0-9][0-9]:[0-9][0-9]:[0-9][0-9]/i )
       {
               print $_."n";#작성시간이 검색되면 게시물로 판단함.
       }
  }



2_make_all.pl   make.pl작업을 반복하여 결과를 한페이지에 합체
#!/usr/bin/perl

use strict;
use warnings;

`rm -rf make.html`; # >> 하기전에 이전파일 삭제
for ( 0..43 )
{
`./make.pl $_.html|iconv -c -f iso-2022-jp -t utf-8  >> make.html`;
}
#네이버 번역기가 일본어를 인식할수 있도록 utf-8로 문자셋 변경


3_korea.sh   합체된 게시물 페이지를 한국어로 번역합니다.
#!/bin/sh

rm -rf korea.html
rm -rf make.html.1 #wget으로 다운로드 해서 생긴 파일 삭제

wget http://j2k.naver.com/j2k.php/korean/http://www.myemy.com/hugyup/test/make.html
cat head > korea.html
iconv -c -f euckr -t utf-8  make.html.1 >> korea.html
#euckr이 아닌 깨지는 문자열로 돌아가며 다시 utf-8로 변환이 되긴함

 
search.sh   table태크로 둘어싸인 게시물 본문이 make.pl에 의해 한줄로 만들어 졌기 때문에 egrep으로 검색이 가능합니다.
#!/bin/sh

rm -rf result.html

cat head > result.html
egrep $1 korea.html >> result.html

00044
  • ?
    ho~~ 2008.09.24 10:59
    1등 ㅋㅋㅋ 열심히 해~
  • ?
    흑엽 2008.09.29 21:33

    도서실에서 열공하시게!ㅋ 노트북 부럽다~~~~~~~~

  • ?
    saillinux 2008.09.24 17:56
    우와 꼼꼼해! '-')< 존경 스럽슴다.
    과연 괜히 아이디가 흑엽이 아니시군요 감격
  • ?
    흑엽 2008.09.29 21:35
    앗....제꺼와 비교할수 없는 간결.막강코드로 OO버를 떨게 만드신! saillinux님ㅋ

리눅스/BSD

PHP Fest 2008

by 흑엽 posted Sep 17, 2008
 
이번 PHPFest 는 “PHP 보안과 미래”이라는 주제로 진행됩니다. PHP 개발환경, .Net과의 접목, 프래임웍을 이용한 RAD 등을 공유합니다.
특별히 이번 행사에는 PHP 개발자이자 보안패치 Suhosin 으로 유명한 suhosin Stefan Esser 씨의 특별 강연이 준비되어 있습니다.

일자: 2008년 9월 28일(일) 12:30
장소: 한국마이크로소프트 본사





TAG •

리눅스/BSD

[후기]KPW2008

by 흑엽 posted Aug 29, 2008
http://event.perl.kr/kpw2008/schedule
2008년 8월 23일 토요일, 13:00 ~ 21:00


퇴근하면 이불속으로의 기절을 반복하던 중 짬을내어 펄매냐홈피에 가보니.. 워크샵 행사의 참석 신청을 받더군요..
하지만...전 이미 밀려서 대기자 였습니다ㅠㅠ

아는 분이 참석하시길레 그분 뵙고 용산관광 가려고 했는데 현장등록을 할수 있었습니다!!(총 2명등록)
하지만 자리가 맨 뒤였고.... umpc의 화면에 눈을 심각하게 뵈렸다는걸 그때 알았습니다-_-
슬라이드의 글씨가 하나도;;; 안보이데요ㅠㅠ
다행히 irc접속하신 분들이 빈자리를 알려주셔서 잘보이는 곳에서 들을수 있었습니다 고마워요ㅎ

편하게 앉아서 듣기만해도 연속 8시간이니 체력이 딸리더군요.
집에가는 버스에서 irc로 유명인사 진님께 더 자랑하려고 했는데...잠만잤습니다ㄷㄷ
발표하시는 분들은 더 힘드셨을텐데.. 정말 수고 하셨습니다

그리고 대기자에 밀려있는 저를 좌절하게 만든 엄청난 출석률로 보아서...
세미나에서 소개된 rss를 연구해봐야겠어요...다음 모임때 밀려나지 않기 위해서는...ㅋ

Board Pagination Prev 1 2 3 4 5 Next
/ 5

Copyright ⓒ 성우 All rights reserved

Powered by SungWoo / Designed by SungWoo

sketchbook5, 스케치북5

sketchbook5, 스케치북5