SlideShare a Scribd company logo
1 of 16
W.T.D Project

이경엽
컴퓨터 보안 1B
Laughing_Man of PRADA
INDEX

1 Introduction
2 Development
3 Contents

Environment

& Process

4 Result
5 Improvements
6 etc…
Introduction
학교 심화학기의 개인 미니 프로젝트로서 참가를 하여

Perl에 대해서 더욱 심도있는 공부.
실생활에서 쓰일 수 있는 도구를 만들고자 생각.

Tube Downloader 와

Perl 크리스마스 달력에 있는 You

Web Page Downloader 스크립트를 합친 후, GUI로 구현
이경엽
컴퓨터 보안 1B
Laughing_Man of PRADA
Introduction
Web Page
Downloader W.T.D ownloader
Tube Downloader 와

Perl 크리스마스 달력에 있는 You

Web Page Downloader 스크립트를 합친 후, GUI로 구현
이경엽
컴퓨터 보안 1B
Laughing_Man of PRADA
Development Environment
OS: Ubuntu 12.10

Language: Perl
Editor: vim

Module:
WebService::GData::YouTube,
WWW::YouTube::Download,
LWP::Simple
Contents & Process
Perl의 CPAN 사이트에서 무수한 모듈 중

YouTube 모듈과 LWP 모듈을 사용,
Wxperl을 통해서 GUI 구현,
사용하기 간편하게 작성.

Process
Contents & Process
Seleting the YouTube…

YouTube 를 선택 후, 확인
-> 선택 창 사라지며 입력 창 나타남.
Contents & Process

찾을 동영상 제목과 개수 입력 후, 확인
-> 입력 창이 비활성화 되며 다운로드 시작
Contents & Process

다운로드 중인 파일 확인
-> 제목 Encoding은 추후 지원 예정
Contents & Process
Seleting the WebPage…

WebPage를 선택 후 확인,
-> 선택 창이 사라지며 URL입력 창 나타남.
-> 주소 입력 후 Ok 누르면 WebPage 다운로드
Contents & Process

다운로드 된 것을 확인,
-> 실행 시 긁어온 WebPage를 보여줌.
-> 주소가 파일 이름으로 저장되는 기능 추후 지원 예정
Contents & Process

The W.T.D 소스 일부분
Result
40 시간 동안
Learning Perl을 Module
까지 배우게 되었습니다.

모르는 것이 더 많았지만
구글링 한 웹 문서를 통해서
실력을 점차 늘려갔습니다.

커맨드 라인 상에서 구현한
스크립트를 GUI 로 구현

몇 번의 시행 착오 끝에
기어코 WxPerl 원리를
어느 정도 이해…
Improvement
GUI 체계
더욱
정밀히
구현

1

2
동영상
제목
Encoding

받은
사이트
이름지정

3

4

검색기능

멀티
다운로드

5
Ect…
Who am I?

한국IT전문학교
1학년 B반
이경엽

The Laughing_Man of PRADA

Mail to
thelm3716@naver.com

Refer to
http://advent.perl.kr/2011/2011-12-09.html
www.cpan.org
http://wxperl.sourceforge.net/
http://docs.wxwidgets.org/2.8.4/wx_contents.html
Seoul Perl Monks IRC Channel
Thank you!!!

More Related Content

What's hot

올챙이 확장으로 살펴보는 이클립스 확장
올챙이 확장으로 살펴보는 이클립스 확장올챙이 확장으로 살펴보는 이클립스 확장
올챙이 확장으로 살펴보는 이클립스 확장
cho hyun jong
 

What's hot (19)

안드로이드를 위한 Gradle 맛들이기
안드로이드를 위한 Gradle 맛들이기안드로이드를 위한 Gradle 맛들이기
안드로이드를 위한 Gradle 맛들이기
 
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
[Korea Linux Forum] Implementing web based online multiplayer tetris with Ope...
 
Gradle 사용하기
Gradle 사용하기Gradle 사용하기
Gradle 사용하기
 
웹 IDE 비교
웹 IDE 비교웹 IDE 비교
웹 IDE 비교
 
PyCon 2015 - 업무에서 빠르게 활용하는 PyQt
PyCon 2015 - 업무에서 빠르게 활용하는 PyQtPyCon 2015 - 업무에서 빠르게 활용하는 PyQt
PyCon 2015 - 업무에서 빠르게 활용하는 PyQt
 
gradle로 안드로이드 앱 빌드하기
gradle로 안드로이드 앱 빌드하기gradle로 안드로이드 앱 빌드하기
gradle로 안드로이드 앱 빌드하기
 
최전방 생존법 - 프론트엔드 개발자로 살아가기
최전방 생존법 - 프론트엔드 개발자로 살아가기최전방 생존법 - 프론트엔드 개발자로 살아가기
최전방 생존법 - 프론트엔드 개발자로 살아가기
 
HTML5로 만드는 데스크탑 어플리케이션 (Node-Webkit)
HTML5로 만드는 데스크탑 어플리케이션 (Node-Webkit)HTML5로 만드는 데스크탑 어플리케이션 (Node-Webkit)
HTML5로 만드는 데스크탑 어플리케이션 (Node-Webkit)
 
Modern Android App Development
Modern Android App DevelopmentModern Android App Development
Modern Android App Development
 
올챙이 확장으로 살펴보는 이클립스 확장
올챙이 확장으로 살펴보는 이클립스 확장올챙이 확장으로 살펴보는 이클립스 확장
올챙이 확장으로 살펴보는 이클립스 확장
 
[오픈소스컨설팅]Gradle Basic - How to use Gradle in Java Project
[오픈소스컨설팅]Gradle Basic - How to use Gradle in Java Project[오픈소스컨설팅]Gradle Basic - How to use Gradle in Java Project
[오픈소스컨설팅]Gradle Basic - How to use Gradle in Java Project
 
Cooking jquery
Cooking jqueryCooking jquery
Cooking jquery
 
Node.js 런타임 버전 관리하기
Node.js 런타임 버전 관리하기Node.js 런타임 버전 관리하기
Node.js 런타임 버전 관리하기
 
우분투에서 안드로이드 개발환경 갖추기 ; 안드로이드 스튜디오
우분투에서 안드로이드 개발환경 갖추기 ; 안드로이드 스튜디오우분투에서 안드로이드 개발환경 갖추기 ; 안드로이드 스튜디오
우분투에서 안드로이드 개발환경 갖추기 ; 안드로이드 스튜디오
 
[네이버오픈소스세미나] egjs-view360 개발기 - 김희재
[네이버오픈소스세미나] egjs-view360 개발기 - 김희재[네이버오픈소스세미나] egjs-view360 개발기 - 김희재
[네이버오픈소스세미나] egjs-view360 개발기 - 김희재
 
실시간으로 안드로이드 프론트엔드 작업하기
실시간으로 안드로이드 프론트엔드 작업하기실시간으로 안드로이드 프론트엔드 작업하기
실시간으로 안드로이드 프론트엔드 작업하기
 
Nutch Homepage Search Engine
Nutch Homepage Search EngineNutch Homepage Search Engine
Nutch Homepage Search Engine
 
스프링 프로젝트 시작하기
스프링 프로젝트 시작하기스프링 프로젝트 시작하기
스프링 프로젝트 시작하기
 
Es6 module
Es6 moduleEs6 module
Es6 module
 

Similar to YouTube, Web Downloader (Perl)

KGC10 - Visual C++10과 디버깅
KGC10 - Visual C++10과 디버깅KGC10 - Visual C++10과 디버깅
KGC10 - Visual C++10과 디버깅
흥배 최
 
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
devCAT Studio, NEXON
 
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
OnGameServer
 

Similar to YouTube, Web Downloader (Perl) (20)

Goorm소개
Goorm소개Goorm소개
Goorm소개
 
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
 
구글앱엔진+스프링+스프링datajpa+메이븐
구글앱엔진+스프링+스프링datajpa+메이븐구글앱엔진+스프링+스프링datajpa+메이븐
구글앱엔진+스프링+스프링datajpa+메이븐
 
[IoT] MAKE with Open H/W + Node.JS - 5th
[IoT] MAKE with Open H/W + Node.JS - 5th[IoT] MAKE with Open H/W + Node.JS - 5th
[IoT] MAKE with Open H/W + Node.JS - 5th
 
[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트
[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트
[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트
 
빌드관리 및 디버깅 (2010년 자료)
빌드관리 및 디버깅 (2010년 자료)빌드관리 및 디버깅 (2010년 자료)
빌드관리 및 디버깅 (2010년 자료)
 
맨땅에서 AI학습플랫폼을 만들기까지
맨땅에서 AI학습플랫폼을 만들기까지맨땅에서 AI학습플랫폼을 만들기까지
맨땅에서 AI학습플랫폼을 만들기까지
 
장고로 웹서비스 만들기 기초
장고로 웹서비스 만들기   기초장고로 웹서비스 만들기   기초
장고로 웹서비스 만들기 기초
 
[3장] 딥러닝을 위한 환경 구축하기 | 수학 통계를 몰라도 이해할 수 있는 쉬운 딥러닝 | 반병현
[3장] 딥러닝을 위한 환경 구축하기 | 수학 통계를 몰라도 이해할 수 있는 쉬운 딥러닝  | 반병현[3장] 딥러닝을 위한 환경 구축하기 | 수학 통계를 몰라도 이해할 수 있는 쉬운 딥러닝  | 반병현
[3장] 딥러닝을 위한 환경 구축하기 | 수학 통계를 몰라도 이해할 수 있는 쉬운 딥러닝 | 반병현
 
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
 
Project anarchy로 3 d 게임 만들기 part_1
Project anarchy로 3 d 게임 만들기 part_1Project anarchy로 3 d 게임 만들기 part_1
Project anarchy로 3 d 게임 만들기 part_1
 
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
 
Single-page Application
Single-page ApplicationSingle-page Application
Single-page Application
 
KGC10 - Visual C++10과 디버깅
KGC10 - Visual C++10과 디버깅KGC10 - Visual C++10과 디버깅
KGC10 - Visual C++10과 디버깅
 
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
NDC2018 안드로이드+유니티 네이티브 프로파일링 삽질기
 
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
 
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
 
『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기
『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기
『빠르게 훑어보는 구글 클라우드 플랫폼』 - 맛보기
 
Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기
Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기
Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기
 
리멤버 데스크톱 앱 개발기
리멤버 데스크톱 앱 개발기리멤버 데스크톱 앱 개발기
리멤버 데스크톱 앱 개발기
 

YouTube, Web Downloader (Perl)