2018/06 6

HTTP에서 HTTPS로의 전환 (with Let's encrypt)

언젠가부터 크롬 브라우저의 주소창 옆에 "안전하지 않음"이라고 표시되기 시작했다. 국내 대형 포털 중 하나인 daum.net 의 2차 도메인에도 안전하지 않음이 보인다. 왜 안전하지 않다고 하는 것일까. 위에 언급한 다음을 예로 들면 우리가 인터넷을 하는 컴퓨터와 포털 서버 사이에 아무런 암호화없이 데이터가 오가고 있는 중이라고 이해하면 좋을 것이다. 암호화 없이 데이터가 오간다는 것은 그 중간에서 누군가 그 내용을 들여다 볼 수 있다는 것을 의미하는 것이다. 예를 들면 현재 인터넷을 하고 있는 컴퓨터 바로 옆에 연결된 컴퓨터에서 무엇을 하고 있는지, 어떤 사이트에 들어가서 무엇을 하는지 다 알 수 있다는 것이다. 현재 글을 작성하고 있는 technote.kr 도 마찬가지이다. 현재 티스토리 기반으로 운..

Wordpress - functions.php 과 plugin의 사용의 차이

wordpress 의 기본 동작을 바꾸는 방법에는 두가지가 있다. 각 theme 폴더에 포함되어 있는 functions.php 파일을 사용.plugin 설치하여 사용. plugin과 functions.php 파일을 사용의 차이 Wordpress plugin을 사용하였을 경우Plugin 패널에서 활성화되었을 경우만 사용 가능모든 theme에 적용됨유일하고 특정한 Header text 필요 (아직 까지는 무슨 말인지 정확히 판단 불가, 원문: Requires specific unique Header text)wp-content/plugins 의 하위 디렉토리에 위치 functions.php 파일을 사용하였을 경우현재 활성화된 theme 의 디렉토리에 있는 functions.php 만 수행해당 theme 에 ..

Python - package와 module의 차이

Python에 있어 module은 하나의 python 코드 파일을 의미한다. 파일 이름 자체가 module을 나타내는 이름이다. 반면 package는 module을 모아 놓은 directory 구조하고 할 수 있다. module 과 package 사용의 예> import ModuleName import PackageNamefrom PackageName import ModuleName import를 하게 되면 해당 ModuleName 혹은 PackageName 이 Loading 상태인지 확인 후 Loading이 되지 않은 상태라면 다음의 위치에서 존재를 확인한다. 1) sys.path 에 선언된 위치2) 현재 실행 위치 Ubuntu 14.04 python 2.7에서 sys.path를 확인해 보면 다음과 같..

Language/Python 2018.06.16

Python - datetime/time module, 현재 시간 출력 방법

datetime 혹은 time module 중 하나를 이용하여 현재 시간을 표시할 수 있다. 먼저 datetime 을 이용한 현재 시간 표현은 다음과 같다. import datetime now = datetime.datetime.now() print now 결과> $ python now_datetime.py 2018-06-05 10:30:06.986065 반면 time module을 이용하면 좀 더 세분화/정교화하여 표시할 수 있다. import time now = time.localtime() print "%04d/%02d/%02d %02d:%02d:%02d" % (now.tm_year, now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec) 결과..

Language/Python 2018.06.16

Python - email package, raw email message 다루기

poplib 를 이용해 raw email message를 받아오더라도 MIME (Multipurpose Internet Mail Extensions, 전자 우편을 위한 인터넷 표준 포맷)이기 때문에 막상 출력해 보면 알아보기 힘든 문자열들로 표현되어 있다. 이에 따라 원하는 값을 추출하기 위해 추가적인 코드를 작성하여야 한다. MIME 형식의 raw email message를 parsing 하기 위해서는 python의 email package를 사용하면 된다. poplib의 M.retr()[1] 을 통해 구한 raw email string은 아래의 코드를 통해 하나의 string으로 표현이 가능하다. raw_email = b"\n".join(M.retr(mList+1)[1]) 이렇게 구해진 raw_ema..

Language/Python 2018.06.15

Python - poplib, POP3 를 통한 이메일 수신

이메일을 웹 Interface가 아닌 별도의 프로그램을 통해 수신하기 위해서는 POP3 혹은 IMAP 을 사용하여야 한다. 가볍게는 POP3가 많이 사용되고, 좀 더 구체적인 기능을 위해서는 IMAP을 사용하면 된다. python에서 POP3을 사용해 이메일 수신하는 방법 python2 : https://docs.python.org/2/library/poplib.html python3 : https://docs.python.org/3/library/poplib.html python2나 python3나 POP3를 위한 python library - poplib 를 가지고 있다. 간단하게 네이버 메일에서 POP3를 통해 이메일을 수신하는 코드를 살펴보자. import getpass, poplib M = po..

Language/Python 2018.06.15