전체 글 (348) 썸네일형 리스트형 Python으로 푸쉬 알람 전송과 시행착오 개요최근 푸시 알람 기능을 만들어야 하는 일이 생겼다. 이것저것 주워들은 게 있어서 푸시 알람 자체에 대해서 어렵게 생각하진 않고 있었지만 테스트를 위해 device token을 얻어내는 과정이 다소 까다로운 지점이었다. 아무래도 특정 기기에 푸쉬 알람을 보내려면 device token이 필요했는데 이를 얻기 위해 내가 사용중인 기기의 device toke을 얻어내는 과정에서 JavaScript를 다뤄야하는 부분이 그러했다. 우여곡절끝에 JavaScript 코드를 만들어 Web/Android 환경에서 device token을 얻어내는데 성공했지만 IOS에서 기기 예를 들어 아이폰이나 아이패드에서는 device token이 얻어지지 않는 현상을 겪었다. 여러 아이디어를 떠올려보고 결국 해결은 했다. 이 .. Github Action을 활용해 Pull Request를 AI로 요약하기 개요사이드 프로젝트에서 계속 Pull Request를 사용하다 보니 어느 “순간 작업 내역에 대한 요약을 보는 게 애매하다” 는 생각을 가지게 됐다. 중간중간 Commit 내역으로 하여금 무슨 작업을 했는지는 파악할 수는 있어도 2% 부족하다는 심상이었다. 그러던 중 Pull Request가 Open 되면 해당 작업 내역을 AI로 요약해주는 무언가를 만들면 괜찮지 않을까 싶어 조사를 했고 Github Action을 이용해 해당 부분을 처리할 수 있었다. 좋은 Pull Request란?지난 글에서는 PyCharm의 Plugin을 활용해 Commit Message를 자동으로 생성하는 과정에서 “좋은 Commit Message”란 무엇일까를 고민하게 됬고 “좋은 Commit Message”는 어떻게 작성해야 .. Commit Message 자동화하기, 근데 AI를 곁들인 개요 최근 회사의 Git Commit Message를 살펴보다 문득 “Commit Type에 대한 특성을 잘 드러내는 Emoji네!”라는 생각이 들었다. 명시적인 것을 좋아하는 나로서는 흥미로웠던 부분인데 그럼에도 불구하고 작업을 마치고 커밋 메시지 작성 시 해당 특성의 Emoji를 매번 수동으로 입력해야 하는 귀찮음이 생겼다. “회사에서 정립한 특정 Commit Message의 성격에 해당하는 Emoji를 수기로 작성”해야 하는 불편함을 해소하기 위해 이것저것 알아보던 중 “AI와 Git Commit Message Template”를 활용해서 해결할 수 있었다. 하지만 Git Commit Message Template를 작성하면서 추가적인 부분을 또 고민하게 됐는데 Commit Message 특성에 맞.. [Review] 한빛미디어, 나는리뷰어다2025 - 파이썬으로 웹 크롤러 만들기 3판 "한빛미디어 서평단 활동을 위해서 책을 협찬 받아 작성된 서평입니다." 파이썬으로 웹 크롤러 만들기(3판)다양한 웹에서 효율적으로 데이터를 수집하는 방법 A to Zwww.hanbit.co.kr 내가 처음 파이썬으로 만들었던 프로그램은 웹 크롤러였다. 그때는 특정 사이트에 공개되어 있는 직원 정보를 스크래핑해서 CUI에서 조회할 수 있도록 만드는 것이 목표였다. 그 과정에서 웹 페이지 구조를 분석하고, 데이터를 가져오는 방법을 익히면서 자연스럽게 크롤링의 기초를 배웠다. 처음에는 단순한 구현에만 집중했지만, 시간이 지나면서 크롤링과 관련된 기술과 역량이 점점 늘어났고, 스스로도 "이런 포인트를 염두에 두자"는 식의 노하우가 하나둘씩 쌓여갔다. 크롤링 기술을 익혀나가는 동안 참고할 자료는 대부분 .. [Review] 한빛미디어, 나는리뷰어다2025 - 행동의 과학, 디자인의 힘 "한빛미디어 서평단 활동을 위해서 책을 협찬 받아 작성된 서평입니다. 개요2024년에 지속했던 한빛미디어의 “나는리뷰어다” 활동을 2025년에도 이어서 할 수 있게됬다. 이런 유의미한 활동을 지속할 수 있게 해준 “한빛미디어”에게 감사를 드린다. 2025년에 새롭게 시작하는 이 활동에서 2월에 선택한 책은 다음 두 가지였다.행동의 과학 - 디자인의 힘그로킹 알고리즘(개정판)이 중 이번에 리뷰할 책은 “행동의 과학 - 디자인의 힘”이다. 선택 배경솔직히 말해 이 책을 선택 리스트에 넣은 건 그렇게 깊은 고민은 없었다. 이 책의 안내 사이트에서 설명문을 보니 “행동”이라는 주제를 중심으로 목차가 구성되었고 이에 호기심이 생겼을 뿐이었다. 감상평이 책의 중심 주제는 "행동 변화"이다. 책을 읽으면서 인간의.. PyCharm에서 환경변수 설정하기 개요Pycharm에서 테스트 코드를 실행 시, 환경 변수들을 테스트 대상 주소로 변경을 해줘야한다. 주로 터미널에서 코드를 실행하기 때문에 Pycharm에서 테스트 코드를 실행하는 방법을 잊어먹곤 한다. 내용이 짧더라도 기록을 해두려고한다. Pycharm에서 환경변수 설정하기Pycharm에서 우측 상단에 하기 이미지에 표시된 버튼을 클릭하자. 좌측 하단의 "Edit Configuration Templates"를 눌러 Djagno tests 메뉴를 찾는다. 그리고 테스트 대상으로 사용하는 환경 변수들을 저장해두자. 위 환경은 PyCharm Professional에서 진행했다. 또한 .env 를 사용하나면 내용을 복사 붙여넣기해도 입력이 가능하다. makefile에서 .env 사용 시 특수문자 처리하기 개요“.env”와 같은 파일에는 외부 접속 정보나 노출되지 않아야하는 변수들을 정의하곤 한다. 그러나 데이터베이스의 비밀번호를 다루는 경우 특수문자들이 들어가곤하는데 이 정보를 읽어들여 사용할 때 문제가 발생한다. 무엇이 문제인가 ?필자는 주로 파이썬과 관련된 백엔드 프레임워크를 다루면서 makefile을 애용하곤한다. makefile을 통해 프로젝트에서 자주 사용하는 명령어를 등록해서 활용하는 방식이다. 그렇다보니 미리 정의된 환경변수 파일(”.env”)를 읽어들이는 과정이 필요하다. 물론 makefile 안에 직접 환경변수를 미리 선언하는 방식으로도 활용할 수 있지만 번거로운 방식이다. makefile에서 “.env” 파일을 사용하는 코드는 다음과 같다.# makefileinclude .envexpo.. 토스 채용공고는 어떻게 크롤링 할 수 있을까? 개요최근 사이드프로젝트를 통해 토스 채용공고에 대한 크롤러를 개발했다. 그간 여러 사이트를 분석하고 크롤러를 만들었던 경험을 가졌기에 이번에도 어렵지 않게 크롤러 개발이 가능했지만 토스 채용공고 크롤러 개발은 생각보다 까다로웠기에 해당 경험을 정리해보고자 한다. 이 글에서는 실제 토스의 채용공고 크롤링에 관련된 코드는 다루지 않을 생각이다. 쓸데없는 걱정이겠지만 이 글을 통해 드러난 방법으로 토스 측의 시스템이 변경하게 되는 것을 염려해서다. 토스 채용공고에 대한 분석토스의 채용공고 페이지에 접속하면 “계열사”가 아닌 “직군”을 중심으로 구성한 채용공고 페이지가 눈에 띈다.큰 회사답게 여러 직군들에 대한 채용공고가 눈에 들어온다. 하지만 토스 채용공고 크롤러는 “직군” 중심이 아니라 토스의 “계열사”별로.. 이전 1 2 3 4 5 ··· 44 다음