개발 노트/개발 삽질 (12) 썸네일형 리스트형 Github Action에서 Selenium 실행시키기 목차 " data-ke-type="html">HTML 삽입미리보기할 수 없는 소스1. 개요Oauth 재연을 실행시키는 시점은 아마 Github를 통해서 가능해야 할 것입니다. 결론적으로는 Oauth를 재연하려면 Redirect 서버가 필요한데 이를 Github에서 처리할 수 있는 방법은 찾지 못했습니다.https://jakpentest.tistory.com/entry/Obsidian-Github-Github-action을-활용한-티스토리-업로드-자동화 근래에 Obsidian으로 MarkDown을 편집하면 Tistory에 자동으로 포스팅 할 수 있는 시스템을 간략히 만들었습니다. 이 과정에서 Tistory에 글을 업로드 하려면 “Oauth 인증”을 거쳐야헀고 이를 Github Action을 통해 해결할 .. Obsidian 노트를 Tistory에 업로드 시키는 방법 목차 " data-ke-type="html">HTML 삽입미리보기할 수 없는 소스개요그 동안 Notion을 쭉 사용하면서의 생긴 불편함은 인터넷에 접속 가능한 환경에서만 이전 기록물에 접근할 수 있단 점이었습니다. 버스를 타고 여행을 갈 때 기차를 타고 본가에 내려갈 때는 인터넷 환경이 불안정하여 Notion을 통해서는 이전 기록물에 접근할 수 없는게 아쉬운 점으로 작용했네요. 이러한 아쉬운 점을 안고 가다 문득 기록물을 Notion으로 통합 관리하지 말고 개인 저장장치내에 MarkDown 파일로 글에 대한 원본을 저장해보자라는 아이디어를 떠올리게 됬습니다. 한 가지 문제점은 MarkDown 편집기를 무엇으로 이용할 것이냐에 대한 문제 입니다. Markdown은 조금만 학습하면 사용할 수 있는 편리한.. 마비노기 패킷 송수신 데이터 관찰기 목차 " data-ke-type="html">HTML 삽입미리보기할 수 없는 소스 개요 근래에 들어 마비노기(영웅전 아님)를 하고 있다. 초등학교때부터 해오던 게임이라 특정 기간에는 몰두해서 즐긴다. 이것저것 참고할게 많은 게임이기도 하기에 플레이에 도움을 주는 외부 사이트를 자주 보곤한다. 그러면서 신기한 점은 이러한 외부 사이트 중 몇 가지는 인게임 정보를 어느정도 반영한다는 것이다. 아무래도 코딩이라는 것을 하고 살다보니 그 동작 원리를 무의식적으로 유추해 보곤 하는데 추측하기로서니 인게임 정보 반영은 "공개된 API를 사용하는 것이지 않을까" 싶었다. 하지만 이 글을 작성하는 시점을 기준으로는 마비노기는 공개된 API가 없다. 그렇다면 인게임 정보를 어떻게 반영하는 것일까? 만약 인게임 정보를 .. ProxySQL을 사용하면 DB Connection을 줄일 수 있다고 ? 목차 " data-ke-type="html">HTML 삽입미리보기할 수 없는 소스 개요 FastAPI를 사용해 API를 만든 뒤 locust를 통해 성능 테스트를 진행했다. “대략 이 정도 TPS가 나오는구나”라고 확인한 뒤 MySQL의 Connection도 이상은 없는지 관심이 갔다. SQLAlchemy에 pool_size를 2로 설정하고 uvicorn worker를 4개로 설정한 상황이다. MySQL 커넥션이 최대 8개(2*4)까지 늘어나는 현상을 보고 “무난하네”라고 생각할 때쯤 의문이 생겼다.서버(FastAPI)를 증가시킨다면 MySQL 커넥션 자체는 계속 늘어나는거 아닌가? 즉, Application Server의 수가 증가할 수록 MySQL 서버와 맺게 되는 커넥션 수가 늘어난다는 문제가 존.. Python으로 Android에 파일을 전송하는 방법 HTML 삽입 미리보기할 수 없는 소스 개요 지난번 글에서 Google API 없이 Youtube 데이터를 수집했던 에피소드를 포스팅했다. Google API 없이 Youtube Page를 분석해 자주 듣는 유투버의 커버 영상을 MP3 파일로 변환하여 다운로드하는 것이 주된 내용이었다. 그러나 MP3 파일로 변환하여 다운로드하는 것까지는 자동화가 가능했지만 다운로드를 완료한 파일을 Android에 옮기는 부분을 자동화하지 못했다는 점이 아쉬웠던 부분으로써 언급했다. 이 부분을 해결하려고 생각했던 Idea는 Python Kivy를 활용하는 것이었는데 이 포스팅을 쓰기 전 잠깐 다뤄보니 build를 통해 apk파일을 뽑아내는데 까지 시간이 너무 오래 걸려 다른 아이디어를 고민해 봤고 이 포스팅은 이에 대한 .. Google API 사용없이 Youtube 영상을 mp3로 저장하기 목차 " data-ke-type="html">HTML 삽입미리보기할 수 없는 소스 개요 Youtube 중 "김달림"님이라는 분이 계신다. 이 분의 커버 영상을 MP3로 변환하여 휴대폰에 저장하여 이동 중에 듣기도 하며 커버 영상을 틀어놓고 개발을 하거나 책을 읽기도 한다. 문제는 휴대폰에 저장하여 이동 중에 듣는다는 것인데 최신 커버 영상이 올라오면 따로 수작업을 통해 휴대폰으로 옮기는 과정이 매우 귀찮은 작업이라는 점이다. 그렇기에 커버 영상의 정보를 가져와 MP3 파일로 일괄 다운로드를 수행하는 스크립트를 만들어봤다. 적어놓고보니 목표로 하는 것은 간단해 보이지만 그 과정은 쉽지만은 않았는데 이 포스팅은 이 과정에 대한 기록을 해놓은 것이다. 1. Google API 없는 Youtube 정보 수집이.. Google OAuth 로그인의 번거로움 해결하기 Google OAuth Token을 얻는 과정이 매번 번거로운데 어떻게 하면 편하게 얻을 수 있을까? HTML 삽입 미리보기할 수 없는 소스 개요 최근 Google OAuth Login 기능을 구현하면서 상당히 번거로운 점을 체감했다. 매번 url을 클릭해서 브라우저를 열고 계정을 선택해서 나온 callback url에서 code를 따로 추출하고 url decoding을 한 뒤 이를 다시 access_token으로 가져오기 위한 코드를 사용한다는 점이 그러했다. 어떻게 하면 이렇게 번거로운 과정을 단축하여 편하게 id_token과 access_token을 얻을 수 있을지 고민했는데 Google 개발 문서를 뒤적거리고 조금의 아이디어를 보태서 해결할 수 있었다. 그러한 배경으로 앞서 이야기한 번거로운 과정.. Brunch와 KaKao 인증에 대한 삽질 HTML 삽입 미리보기할 수 없는 소스 개요 얼마 전 Brunch에 발행된 글을 살펴보다 키워드가 잘못 설정되었음을 깨달았다. 하나의 키워드를 특정 글에 업데이트만 하면 되는 것이기에 일괄적으로 수정하려고 했지만 Brunch는 이러한 기능을 제공하지 않았다. 이를 코드로 풀어내고자 Brunch 계정이 KaKao와 연계되어 있어 KaKao API에 혹시나 Brunch 게시글을 수정하는 기능이 있나 찾아봤지만 제공되는 기능은 아니었다. 오픈된 API가 없다면 통신 과정을 재연시키면 가능하기에 Brunch 내부에서 통신하는 주소를 관찰하게 되었다. Brunch 내부적으로는 API를 요청하는 주소가 몇 건 들어있었고 이를 활용하고자 했다. 문제는 Brunch에서 사용하는 API 요청을 재연시키려면 KaKao의 .. 이전 1 2 다음