라벨이 IT인 게시물 표시

YouTube에서 동영상 snapshot 끊어오기

준비물 Node.js 설치 FFmpeg 설치 : Windows 사용자들은 binary 를 받은 다음 압축을 풀고 path 설정하세요 .   환경설치 작업 폴더를 하나 만듭니다 . 폴더로 들어가서 다음을 실행하여 youtube.com 을 설치합니다 . npm install youtube.com   실행준비 node.js 스크립트에서 다음과 같이 실행준비를 합니다 . var YouTube = require(‘youtube.com’); var youtube_url=’YouTube 동영상의 URL‘; var youtube = YouTube(youtube_url);   샘플코드 과제 샘플코드 25 초에서 50 초 사이를 잘라와서 저장하기 youtube.crop(‘0:25’,‘0:50’,‘./my_movie.mp4’).then(function(){}).catch(function(err){}); 1 분 째 화면을 캡처 youtube.snapshot(‘1:00’,‘./my_pic.jpg’).then(function(){}).catch(function(){}); gif 로 youtube.gif(‘0:25’,‘0:35’,‘./my_gif.gif’).then(function(){}).catch(function(){}); 비디오 다운로드 youtube.download(‘file.mp4’).then(function(){});  
이미지
https://chrome.google.com/webstore/detail/mindmap-tab/mkgjficalhplaenklhejcbmlkonbakjj?hl=ko&utm_source=chrome-ntp-launcher 브라우저에서 작동되는 간단하고 쓸만한 마인드맵을 찾다가 발견! 오호 좋다. 텍스트 에디터에서 바로 작업 가능하다. 예를 들어 에디터에 다음과 같이 입력하고 텍스트창에 붙여넣으면 마인드맵이 생긴다. 나에게는 정말 필요한 앱! 이렇게 하면

[Cheat Code/Ubuntu] 네트워크 다루기

네트워크 설정하기 네트워크 매니저 제거 $ sudo apt-get remove -y --purge network-manager 유선 네트워크 보기 $ ifconfig 네트워크 인터페이스 편집 $ sudo vim /etc/network/interfaces DHCP 설정 auto eth0 iface eth0 inet dhcp 정적 주소 설정 auto eth0 iface eth0 inet static address 0.0.0.0 netmark 0.0.0.0 gateway 0.0.0.0 dns-nameservers 0.0.0.0 1.1.1.1 네트워크 재시작 $ sudo ifdown eth0 $ sudo ifup eth0 무선 네트워크  보기 $ iwconfig 무선 네트워크 활성화 $ sudo ifconfig wlan0 up $ ifconfig AP 검색 $ sudo iwlist wlan0 scan AP 접속 $ sudo vim /etc/network/interfaces auto wlan0 iface wlan0 inet dhcp allow-hotplug wlan0 wpa-ssid "gateway" wpa-psk "password" $ sudo ifdown wlan0 $ sudo ifup wlan0 무선 네트워크 시작 등록 $ sudo vim /etc/rc.local ifdown wlan0 ifup wlan0 exit 0

OwnCloud 완벽 가이드

Owncloud는 사설 클라우드를 구축할 수 있도록 하는 "공짜" 프로그램입니다. 좋죠. 그렇지만 공짜라서 설치하고 활용하기 참 어렵기도 합니다. 저도 학생시절에 OwnCloud를 썼었고 이후 돈이 좀 생겨서 Google Drive로 갈아탔지만 여전히 사설망이 구축된 환경에서는 OwnCloud의 속도를 따라갈 수가 없습니다. 설치가 어려워서 못 쓰시지요.. 나빠서 못 쓰지는 않은 프로그램이랄까... 해야 할 것 먼저 컴퓨터를 한 대 준비합니다. 전원공급기 UPS로 있으면 좋겠습니다. 이 컴퓨터를 Ubuntu 16.04 LTS Desktop이상으로 설치합니다. 설치 방법은 알아서 하세요. ㅋㅋㅋ 이제 터미널을 열어서 작업할 준비를 마칩시다. 터미널에서 아.. 터미널.. 이제 sudo su 명령어로 수퍼유저로 변환해야 겠죠? $ sudo su # .. Docker 설치 도커를 설치합니다. # apt-get install docker.io 설치가 다 끝났으면 이제 owncloud 이미지를 받아서 설치를 완료하겠습니다. /home 폴더에 owncloud 폴더를 만들고, 여기에 config와 data를 링크로 따올 것입니다. 반드시 config도 같이 해야 하는데 인터넷 문서를 보면 이 부분을 잘 설명해 두지 않았습니다. 쯔쯔... 저는 80 포트를 씁니다. 어차피 이 컴퓨터는 owncloud 하나만을 위해 사용할 것이니까요. 집에 놀고 있는 구식 컴퓨터가 있으면 SDD를 끼워서 owncloud 서버로 써도 좋습니다. # docker run -d -p 80:80 -v /home/owncloud/config:/var/www/html/config -v /home/owncloud/data:/var/www/html/data --name="owncloud" owncloud 이미지를 다운로드 받을 것이고 설치가 완료될 것입니다. Config.php 설정 ...

HTTP directory 다운로딩

리눅스의 wget 명령어를 사용하여 HTTP directory의 파일을 가져오자. 명령어는 $ wget -r -np -nH -R "index.html*" <http://....> 위의 <http://...>에 원하는 주소를 넣는다. 가령 http://drive.nowhere.com/folder라는 곳의 파일 및 하위 디렉토리 전부를 다운로드 받으려면 $ wget -r -np -nH -R "index.html*" http://drive.nowhere.com/folder

왜 프로그래밍인가

요즘 다양한 경영학 전공자들이 파이썬에 도전하는 것을 보면 참 감회가 새롭습니다. 그런데 목적이 없으면 배우기 어렵습니다, 프로그래밍 언어는. 코딩에 익숙해져라! 파이썬을 배우기가 어렵다 생각한다면 당신은 코딩 초보자. 먼저 코딩 환경에 익숙해지세요. 제가 생각하는 최선의 방법은 Javascript와 Web Browser로 코딩을 익히는 것입니다. 사칙연산은 무조건 Javascript! MS워드 대신 무조건 HTML, CSS, Javascript! 3개월만 공부해보세요.

Node.js Express 사용하여 RESTful API 만들기 (1)

얼마나 참고할런지 알 수는 없지만... KAIST 학생들을 위해서 Express 활용하여 RESTful API를 만드는 초간단 방법을 소개합니다. 일단 node.js 설치했다고 합시다. 폴더 구조 만들기 우선 서버가 돌아갈 폴더를 하나 만듭니다. test-server라고 합시다. 이 폴더의 하위에 package.json을 만들기 위해 다음과 같이 npm을 실행합니다. $ npm init $ npm install fs express ejs body-parser express-session --save 그리고 폴더를 세 개 만듭니다. 각각의 이름은 public, router, views입니다. Server.js 파일 만들기 이제 test-server에 server.js 파일을 만들고 다음과 같이 씁니다. /* External Moduels */ var express = require('express'); var app = express(); var bodyParser = require('body-parser'); var session = require('express-session'); var fs = require("fs") /* Environment Setting */ app.set('views', __dirname + '/views'); app.set('view engine', 'ejs'); app.engine('html', require('ejs').renderFile); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({extended:true})); app.use(session({  secret: 'yourkey', //MODIFY THIS  ...

Node.js의 package.json 작성하기

Node.js에서 패키지 설치를 어떻게 하느냐구요? npm을 활용한다는 것은 알려드렸죠? 간단해요. $ npm init 이렇게 하면 package.json 이 만들어져요. 이제, 패키지를 설치하려면? $ npm install 끝이에요. 이왕 패키지 이야기를 했으니 좀 더 이야기해볼까요? {   "name": "my test app",   "version": "1.0.0",   "description": "test app",   "main": "server.js",   "dependencies": {},   "devDependencies": {},   "scripts": {     "test": "echo \"Error: no test specified\" && exit 1",     "start": "node server.js"   },   "repository": {     "url": ""   }   "author": "Taekyung Kim",   "license": "MIT" } 대충 이런 모양이에요. package.json은. 중요한 것은 노란색으로 제가 칠한 부분이에요. 저 곳에 설치하려는 모듈 이름을 적어주면 되요. 다음과 같이 변경되겠죠?   "devDependencies": {     "express": "",     "ejs": "",     "bod...

카카오 LAMP 이용한 초간단 챗봇 만들기

카카오 플러스친구 API 만들기 PHP를 이용해서 간단한 플러스친구 챗봇을 만들어보자. https://center-pf.kakao.com/login  로긴하고 플러스 친구를 만든다. 스마트 채팅 > API형 LAMP 설정 DigitalOcean에서 계정을 만든다면 LAMP 환경을 구축한다. /etc/apache2/apache2.conf 수정하여 php extensions을 감추자. <Directory "/var/www/html/">     Options FollowSymLinks MultiViews     AllowOverride none     Order allow,deny     Allow from all </Directory> PHP 기본적으로 두 개의 파일이 필요하다. keyboard.php, message.php Keyboard.php <?php echo <<< EOD {     "type" : "buttons",     "buttons" : ["시작하기", "도움말"] } EOD; ?> Message.php <?php function call_msg($msg) {     $output = '{"message":{"text":"'.$msg.'"}}';     return $output; } $data = json_decode(file_get_contents('php://input'), true); $content = $data["content"]; if( $content == "시작하기" ) {     echo call_msg("시작해볼까?"); } //...

수업시간에 활용할 Gantt 프로그램

크롬의 App입니다. 타이틀은 Gantter for Google Drive
Windows 10 Search Index CPU 점유 문제 해결법

Chrome 사용자를 위한 Extension 추천

Twitter Share on Twitter  : 웹 컨텐츠를 바로 공유 Bit.ly  : 단축 링크를 생성 Developer Browsec  : 트래픽/패킷 암호화하여 확인이 불가능하도록 하기 CSSViewer  : CSS 스타일 정보 표시 Data Scrapper  : 웹데이터를 가져오도록 하는 자동 스크립트 생성기 JSON Pretty Printer  : JSON 데이터를 보기 좋게 표시하기 JSON to CSV  : JSON 데이터를 CSV 포맷으로 바꾸어 표시 Request Maker  : Request 데이터 기록 User Agent Switcher  : HTTP-header의 User Agent 변경 XPath Helper  : Xpath 형식으로 엘리먼트 위치 보여줌 IP Address and Domain Information  : IP 주소에 대한 데이터 Instrumente  : 패스워드 생성기를 비롯한 각종 도구

Leopold FC900R 후기

이미지
기계식 키보드. 보통 사용하는 키보드는 멤브레인나 펜타그램 방식이다. 참고:  키보드 종류에 관한 글 레오폴드의 FC900R은 이들과는 달리 "기계식"이다. 키마다 스위치가 하나씩 달려 있는 전통적 방식이다. 개인적으로 사용하거나 소유해 보았던 기계식 키보드는 모두 5가지였다. 이번 FC900R을 제외한 네 가지는: IBM Model M 5-1, Happy Hacking, Real Force 106, 레오폴드의 FC660M이다. 이 중에서 M은 오래전에 분양했고(벌써 10년도 전), Happy Hacking과 FC660M은 아시는 분에게 그냥 넘겼다. Real Force는 와이프에게 줬다. FC900R을 구입한 이유는 Happy Hacking2가 영 마음에 안들어 구매를 포기하고 다른 고가 키보드도 썩 땡기는 것이 없는 마당에 가능한 쓸만하고 저렴한 녀석을 구해보자는 생각 때문이다. 10만원 초반에 팔리는 FC900R은 사실 단단한 맛은 거의 없는 밋밋한 기계식이다. 요즘 기계식은 게임 사용자들에게 많이 팔린다는데 게임을 위한 요소는 거의 없다. 생겨먹은 것도 아주 전통적이다. 3040 세대들은 XT와 AT를 사용하던 시대가 연상될 정도다. 스위치는 체리MX의 청축을 선택했다. 따따딱 찍히는 맛이 일품인 체리 스위치 중에서도 가장 보편적이고 대중적인 선택이다. FC900R은 백라이트가 들어 있어 분위기 연출에 좋다. 빨간색의 키 상판도 실물이 훨씬 멋지다. 무엇보다 이 키보드의 백미는 키캡의 품질이다. FC660M은 키캡 품질이 매우 나빴는데 FC900R은 이와 지극히 대조적이다. 이중사출 방식으로 내구성이 보증되고 손가락에 감기는 감촉도 부드럽다. 키 높이도 적당해서 모델 M에서 느껴지는 다소간의 이질감도 없다. 정전용량 방식의 해피해킹이나 리얼포스와 비교는 어렵지만 1/4 가격에 그 보다 더 훌륭한 타격감을 제공한다. 한마디로 가성비가 좋다. 이 키보드를 일반 사무실에서 사용하기는 어려울 듯하다. 생각...

엑셀 날짜 시간 넣기

엑셀에 날짜 시각 넣으려면? =now() 이렇게 하시지만, 이것은 현재 시스템 정보를 읽어오기 때문에 매번 최신 데이터로 업데이트 됩니다. 연구 노트를 쓰려면 딱 고정된 데이터가 필요합니다. 어떻게 하나... 셀을 클릭하고 Ctrl (+) ; (한 칸 띄우고) Ctrl (+) Shift (+) ; 그럼 날짜와 시각이 정적 데이터로 찍힙니다.

변수 표기법에 대하여

제가 서울대학교 박진수 교수님께서 가르치신 Java 수업을 들었을 때 입니다. 난생 처음 변수 표기법을 배웠는데 아주 까다롭게 하셔서 '아니 그냥 이름인데...' 이런 생각을 한 적이 있습니다. 살다보니 까다로운 박진수 교수님께 고마움을 느낍니다. R에서 자료나 함수를 사용하면 반드시 이름(식별자, identifier)을 붙입니다. 변수나 상수, 함수, 클래스 뭐든 마찬가지입니다. 이름을 붙이는 관습에는 크게 3가지 종류가 있습니다. 먼저 파스칼(Pascal) 표기법부터 생각해 봅시다. 대문자로 시작 단어의 조합이면 각 단어는 대문자로 시작 예) Database DataProcessing CreateButton() 파스칼 방법은 읽기 쉽게 여러 단어를 연결하는 방법입니다. 다음으로 헝가리안(Hungarian) 표기법(notation)이 있습니다. 이 방법은 파스칼 표기법에 변수의 데이터형(data type)을 함께 기록하는 방법입니다. R보다는 C나 Java에 도움이 되는 방법입니다. 정수: n, l 실수: f, d 문자: c, s 인덱스: i unsinged: u 예) nRanking, lTotalHit fAverageScore, dDistance cGender, sName iPositionOnQueue unAge #unsigned 정수입니다. 마지막으로 캐멀(Camel) 표기법입니다. 변수나 함수는 첫 문자는 소문자로 시작 클래스는 첫 문자가 대문자로 시작 다음 문자부터는 대문자로 시작 함수나 매쏘드는 동사로 시작 예) MyClass #클래스 myName #변수 createMyName #매쏘드 캐멀 표기법에 헝가리안 표기법을 합쳐서 사용할 수도 있지만 이때는 언더스코어(_)를 붙여 뒤에 표기합니다. 예) myName_s age_un totalAmountMoney_d 관습적으로 of, the, a, a...

오피스 365 포기하고 오피스 2010으로 돌아가다

6개월의 구독기간을 남겨두고 오피스 365를 포기했습니다. -_- 오피스 2013도 깔아줘서 참 좋다 생각했지만 포기할 수밖에 없는 이유가 있었습니다. 그 이유는 무지막지한 CPU 사용!!! Excel은 대용량 계산을 위한다며 코어란 코어는 다 쥐어짜고, 계산하는 중간중간 웹 접속 확인하고 싱크 확인하고 별 짓을 다 하더니 순식간에 CPU 사용량을 80% 쓰지... 도대체 저의 LG 그램으로는 따라 갈 수 없습니다. 왠만한 작업에는 랙 걸리기 기본이고 더 문제는 배터리 소비량이 너무 커 이동하며 사용할 수 없다는 것입니다. 그래서 오피스 2010으로 돌아갔습니다. 그랬더니... 갑자기 그램이 너무 좋은 울트라북이 되었답니다. 저는 이동 시에는 초절전 셋팅으로 다닙니다. 오피스 2013을 사용할 때는 최대 CPU를 못해도 50%로 했는데, 이제는 5%에도 빵빵 잘 돌아갑니다. 최소 CPU는 5%에서 2%로 낮췄고, 인텔 그래픽도 Maxium Battery Life로 셋팅을 돌렸습니다. 발열 제로, 소음 제로, 사용 시간 80% 충전 기준으로 6시간 확보. 이 모든 것은 오피스 2013 때문이었습니다. 또한 윈도우즈10의 Microsoft Search 서비스 때문이기도 합니다. 최악! 마소는 각성하라! 서피스에 최적화시키느라, 태블릿에 최적화 시키느라 노트북 사용자들을 개무시하고 있습니다. 그래도 한국에서는 윈도우즈 안쓸 수가 없죠. -_-

Windows 10 속도 최적화(tips)

http://www.askvg.com/beginners-guide-to-configure-windows-10-services http://www.askvg.com/master-tutorial-to-make-windows-10-super-fast/ http://windows.wonderhowto.com/how-to/everything-you-need-disable-windows-10-0163552/ http://www.askvg.com/easy-way-to-uninstall-built-in-apps-in-windows-10/