Python 썸네일형 리스트형 SMTP 사진 첨부파일로 첨부하기 SMTP로 이메일을 발송할 일이 종종 있다. 물론 이미지 태그 를 사용하여 어딘가에 저장된 사진을 html 형식으로 전송해도 되지만, 경우에 따라서는 그냥 해당 이메일에 첨부하는게 제일 좋은 때가 있다. 어떤 백엔드 언어를 사용해도 무방하겠지만, 가독성이 좋은 python의 smtplib를 통해서 알아보자. 첨부파일이 없다면 그냥 아래와 같이 해도 무방하겠다. import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart # 발송 계정 정보 smtp_server = 'smtp.example.com' smtp_port = 587 smtp_username = 'your_email@example... 더보기 PHP로 텔레그램 봇 만들기 telegram bot + PHP 챗봇 만드는건 요즘 다양한 방법이 있지만, 텔레그램 봇으로 만드는게 사실상 가장 심플하다고 할 수 있을 것 같다. 카톡이나 페북 메신저 같은거에서 하려면 인증과정이나 승인과정 같은게 있어서 번거로운데, 텔레그램은 그냥 봇 이름만 정하면 바로 만든 봇의 토큰이 뚝딱 나오고, 다른 설정 없어도 바로 시작할 수 있다. 그리고, 아래와 같이 각종 언어에 대해 챗봇을 쉽게 사용할 수 있는 라이브러리가 다양하게 지원되고 있다. 오히려 라이브러리가 너무 많아서 그중에 뭘 써야할지 고민스러울 정도다. 사실 어차피 기능은 다 비슷하니 가장 사용성이 쉽고 최신버전까지 지원해주는걸 쓰는게 무난할것 같다. Python에서는 python-telegram-bot을 조금 사용해봤다. import telegram bot = tele.. 더보기 PHP에서 python 스크립트 실행하기 (permission 문제해결) 물론 flask 등으로 python서버를 구동하고 흔한 방법으로 .py 파일을 구동할 수 있겠지만, PHP에서도 shell_exec 나 exec 또는 system 등의 명령어로 서버 명령어를 실행할 경우가 있고, 그 중에서 .py 파일을 구동하는 것도 가능하기 때문에 특정 파이썬 라이브러리만 쉽게 쓰고 싶은데 전체 웹개발은 php로 이루어져있는 경우 등 어쨌든 그런 니즈가 발생할 경우 그냥 하면 되는데 가끔 .py 의 내용에 따라서는 permissions denied 에러가 발생하는 경우가 있다. 그럴 때는 $ sudo vi /etc/sudoers 등의 명령어로 www-data 의 권한을 설정해 주면 되는데 www-data ALL=NOPASSWD: ALL 같은 식으로 모든 명령어에 대해서 웹실행이 가능하.. 더보기 파이썬 웹크롤링 브라우저별 속도 테스트 Edge vs Chrome vs Firefox 크롤링이나 매크로를 만들기 위한 간단한 브라우저 테스트를 진행했다. 조건은 파이썬에서 bs4와 lxml, selenium을 사용하고 윈도우10에서 대충 돌려보는거다. 첫번째 시험에서는 edge 7.08초 chrome 6.85초 firefox 8.50초가 나왔다. 두번째 시험은 역순으로 진행했고 위와 같은 결과가 나왔다. 크롬과 edge가 거의 비슷한 속도가 나오고 파이어폭스가 가장 느리다. 이번엔 같은 브라우저로 3번씩 연속으로 시험해보기로 했다. 파이어폭스는 7.74 ~ 7.88초가 나왔다. 크롬의 경우 6.62 ~ 6.95초로 나왔다. Edge의 경우 6.40 ~ 6.53초로 가장 빠른 속도가 나왔다. 시험에 사용한 브라우저의 버전은 아래와 같다. 시험조건에 따라 시간은 단축되거나 더 늘어날 수도 있.. 더보기 어쩌다 파이썬 + 장고 (Python + Django) 2편 - django-instagram 프로젝트 따라해보기 인스타그램에서 특정계정의 최신게시물을 가져오는 간단한 프로젝트이다.1편에서 이어지므로 1편부터 보지 않은 사람은 보고 오면 좋다. django-instagram으로 검색하면 나온다. https://pypi.org/project/django-instagram/ pip로 우선 패키지를 설치해준다. 그리고 아래와 같이 차례로 프로젝트 생성하고, db를 생성하려고 하면, 당연히 settings.py 에 app 추가를 안했으므로 에러가 난다. INSTALLED_APPS 에 django_instagram 을 추가해주면 된다. 그러면 아까 명령어가 먹는다. migrate까지 해주면 생성 완료 가져온 데이터를 웹에 뿌려줄 웹페이지가 필요하므로 settings.py에 html이 들어갈 디렉토리를 하나 설정해준다. 물론 .. 더보기 어쩌다 파이썬 + 장고 (Python + Django) 1편 - 윈도우10에 파이썬 장고 설치 파이썬은 간혹 일부 기능만을 위해 사용할 일은 있었는데 파이썬으로 전체 서비스를 구축하는 것은 굳이 다른 익숙한 언어로 하면 되니까 꼭 필요는 없었는데 이번에 파이썬 모듈들을 활용하기 좋은 프로젝트를 진행하게 되어 완전 초보의 마음으로 파이썬 + 장고를 설치해보기로 했다. 먼저 계획은 1. 내 win10 PC에 먼저 설치해보기 2. 우분투+nginx 서버에도 설치해서 상시 돌아가는 서버로 써보기 3. 간단한 예제 따라해보기 이정도이다. 우선 PC에 설치과정은 뭐... 그냥 흔한 설치다. 지금 이 글을 쓰는 시점으로는 3.8.2 가 최신버전이다. 특별히 가릴 이유는 없으니 이 버전을 다운 받아 설치했다. 그다음에 윈도우 cmd 창에서 아무 디렉토리에서나 실행가능하도록 전역path 설정을 해주었다. cmd .. 더보기 이전 1 다음