개발을 파헤치다(101)
-
Django에서 HTML 태그 추출하기 - Beautiful Soup
Beautiful Soup은 무엇인가? BeautifulSoup(이하 bs4)는 XML과 HTML형식으로 된 문서를 분해할 수 있는 분해기(Parser)입니다. 직관적이고 굉장히 쉽게 사용할 수 있다는 장점이 있습니다. 원하는 HTML 태그를 검색/추출 및 수정하는데 긴 코드가 필요없습니다. elements = BeautifulSoup("TITLEexmaple", 'html.parser') elements.title.get_text() # TITLE이 문자열로 리턴됩니다. 위처럼 직관적으로 간단하게 HTML 태그 및 태그의 속성값까지 다룰 수 있습니다. bs4와 비슷한 라이브러리로는 유명한 lxml이 있습니다. lxml은 C로 만들어졌기 때문에 성능에 최적화 되어 있습니다. 위의 bs4 공식 문서에서도 ..
2018.05.06 -
PyCharm 개발환경 세팅하기
Python 설치 Python 3.6 설치를 진행합니다. 설치하려면 다음의 링크를 참조하십시오. https://www.python.org/downloads/ Python 설치가 완료되었는지 확인하기 위해 Window + R 키를 누릅니다. cmd를 입력하여 콘솔창을 띄웁니다. > python --version Python 3.6이라고 콘솔창에 표시되면 정상적으로 설치가 완료된 것입니다. PyCharm 설치 PyCharm은 Jetbrain에서 만든 강력한 Python 개발 도구입니다. PyCharm은 Community Edition과 Professional Edition이 있으며, 본 글에서는 Professional Edition을 기준으로 설명합니다. PyCharm을 설치하기 위해서 다음의 링크를 참조하..
2018.04.30 -
Ajax 사용하기
Ajax는 뭐죠? 웹 어플리케이션을 만들 때 번거로운 부분을 생각해보면 아마 서버와의 데이터 통신 부분이 손에 꼽힐겁니다. 보통 HTTP 통신으로 클라이언트(웹)가 서버에 요청을 보내면 서버에서는 클라이언트가 요청한 페이지 혹은 데이터를 보내주게 되죠. 그러면 HTTP 응답으로 온 HTML 문서 혹은 JSON 데이터등을 클라이언트에서 처리해서 사용자에게 보여주게 되는거죠. 자, 이때 매우 비효율적인 부분이 발생하는데요. 게시판을 예로 한번 들어보죠. 게시판에는 많은 글들이 있습니다. 흔히 페이징이라고 하는 기법으로 구현이 되어있죠. 위의 페이지 번호들을 생각하시면 이해가 빠르실 겁니다. 저 번호를 누를 때마다 알맞은 데이터들을 가져오는 방식이죠. 자 이때, 게시글을 제외한 나머지 영역들은 변하지 않습니다..
2018.03.07 -
서버에서 클라이언트로 푸시하는 방식에 대하여
웹 어플리케이션은 태생이 Client - Server 모델을 기반으로 만들어졌습니다. 클라이언트가 필요한 리소스를 서버에 요청하면 서버는 그에 대한 응답을 돌려줍니다. 이것이 기본적인 Client - Server 모델의 동작 방식입니다. 이 모델에서 항상 새로운 요청을 보내는 쪽은 클라이언트입니다. 그렇기 때문에 서버에서 클라이언트에게 먼저 데이터를 보낼 방법이 없었습니다. 이 문제를 해결하기 위해서 푸시 방식(Push)이 고안되었습니다. 푸시 방식은 서버에서 클라이언트에게 정보를 먼저 보내주는 전달 방식을 의미합니다. 클라이언트가 서버로부터 원하는 정보를 계속 요청하는 방식을 Pull 방식이라고 합니다. 스마트폰의 푸시 알람, 맞춤형 컨텐츠 이메일 알람 서비스가 모두 서버에서 클라이언트로 정보를 보내는..
2018.01.16 -
PHP용 AWS S3 Client 사용하기
AWS에서는 Simple Storage Service(이하 S3)라는 유용한 도구를 제공합니다. S3에는 이미지, 파일 뿐만 아니라 데이터베이스 백업, 소스코드 백업 데이터도 저장할 수 있습니다. 대용량 데이터를 저장하는데 유용한 서비스라고 할 수 있습니다. AWS Console로도 관리가 가능하지만 AWS에서는 다양한 언어로 S3의 파일(객체)들을 다룰 수 있는 도구를 제공합니다. 이번에는 AWS S3의 저장소 개념인 Bucket에 객체를 업로드, 가져오기, 삭제하는 기능과 Bucket의 객체 목록을 받아오는 Class를 직접 구현해 봅니다. 또한, S3에서 이미지 객체를 가져오는 경우 어떻게 브라우저 상에서 보여줄 수 있는지 그리고 어떤 점을 주의해야 하는 지도 함께 살펴봅니다. Composer 설치..
2018.01.12 -
PHP로 AWS S3에 파일 업로드 / 삭제
Composer 설치 Composer는 PHP에서 사용하는 의존성 관리 도구입니다. 프로젝트에서 필요한 라이브러리들을 선언해두면 이 Composer라는 녀석이 필요한 패키지들을 프로젝트 안에 모두 설치해주죠. AWS SDK를 사용하기 위해 일단 이 Composer라는 녀석부터 설치해보도록 하겠습니다. curl -sS https://getcomposer.org/installer | php curl을 사용해 Composer를 설치해줍니다. AWS SDK 설치 이제 프로젝트의 최상위 폴더에 composer.json이라는 파일을 만들어 줍니다. vi composer.json 이 파일에 AWS SDK를 설치하라는 선언을 해줄겁니다. { "require": { "aws/aws-sdk-php": "^3.34" } }..
2018.01.11