일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- uvicorn
- 자동화
- 자동화 도구
- realtime
- WSL
- 티켓링크
- 피들러
- GPT
- FastAPI
- ubuntu
- 프록시
- netfunnel 우회
- linux
- 콘서트
- App
- WebRTC
- Django
- selenium
- fiddler
- 개발자 도구 우회
- AWS
- 퍼피티어
- 예매
- 티켓
- puppeteer
- nginx
- kotlin
- EC2
- 직링
- 개발자 도구
- Today
- Total
목록2025/05 (28)
개발 삽질 일지

이번 글에서는 Django와 FastAPI로 분리되어 있는 프로젝트를 Docker를 이용해 각각의 컨테이너로 띄워보는 실습을 진행할 겁니다. 본격적인 실습에 앞서, 도커가 무엇인지, 왜 개발 환경에서 유용한지, 간단히 알아보도록 하겠습니다. 도커(Docker)란?도커는 애플리케이션을 컨테이너 단위로 나누어 실행할 수 있게 도와주는 오픈 소스 프로젝트입니다. 리눅스의 프로세스 격리 기술(Linux namespace, cgroups 등)을 바탕으로 동작하며, 소프트웨어 실행에 필요한 모든 요소(코드, 라이브러리, 설정 등)를 하나의 이미지로 패키징해줍니다. 즉, 서버든 로컬이든 어디서 실행하든 동일한 환경을 보장해줍니다. 또한 도커는 리눅스의 운영 체제 수준 가상화를 추상화 및 자동화해줍니다. 즉, 각각의 ..

지난 글에서는 Selenium을 활용해 콘서트 예매 자동화를 성공적으로 구현해 보았습니다. 이번 글에서는 자동화 코드에 GUI를 입혀 누구나 버튼 한 번으로 자동화를 실행하고, 멈출 수 있는 직관적인 데스크탑 애플리케이션으로 발전시켜 보려고 합니다. 이를 위해 Puppeteer 기반 자동화 코드를 Electron으로 감싸고, 사용자가 콘서트 예매처와 ID, 날짜 및 시간을 직접 입력할 수 있는 인터페이스를 제공하는 방식으로 구현해볼 예정입니다. ⚠️ 이 글은 기술적인 호기심과 실험적인 분석을 위한 목적으로 작성되었습니다. 실제 예매 과정에서 이를 악용하거나 무단으로 활용하는 것은 서비스 약관 위반이 될 수 있으며, 법적 책임이 따를 수 있습니다. 또한, 이번 글에서는 코드 구현보다는 개념과 작동 원리에 ..

지난 글에서는 Puppeteer를 활용해 콘서트 예매 자동화를 성공적으로 구현해 보았습니다. 콘솔 창에서 HTML 요소를 분석한 뒤, 실제 사용자의 동작처럼 버튼을 클릭하고 예매 절차를 밟는 과정을 구현했었습니다. 말하자면, 외형과 능력을 모두 갖춘 진짜 메타몽이 되어버린 순간이었죠. 이번 글에서는 다른 방식인 Selenium(셀레니움)을 이용해 동일한 콘서트 예매 자동화를 시도해보고, 퍼피티어와 차이를 비교해보려 합니다. ⚠️ 이 글은 기술적인 호기심과 실험적인 분석을 위한 목적으로 작성되었습니다. 실제 예매 과정에서 이를 악용하거나 무단으로 활용하는 것은 서비스 약관 위반이 될 수 있으며, 법적 책임이 따를 수 있습니다. 또한, 이번 글에서는 코드 구현보다는 개념과 작동 원리에 집중하니 가볍게 읽어..

지난 글에서는 실제 사용자의 동작을 흉내 내는 방식으로 콘서트 예매를 시도했습니다. 콘솔 창에서 HTML 요소를 확인한 후, 그 요소를 클릭하는 방식으로 진행을 했었지만, 예매하기 버튼이 콜백 함수 안에 감싸져 있는 경우에는 정상적인 사용자의 동작을 흉내내더라도 같은 결과를 얻을 수 없었습니다. 사용자로 변신한 메타몽같은 느낌이였죠. 외형은 사용자지만 능력치는 다른... 이번 글에서는 Node.js 기반의 Puppeteer(퍼피티어)를 사용해서 콘서트 예매를 자동화 시켜보도록 하겠습니다. 개발을 처음 접하시는 분들도 따라갈 수 있도록 0단계부터 시작해서 최종장까지 함께 줄의 앞부분을 노려봅시다. ⚠️ 이 글은 기술적인 호기심과 실험적인 분석을 위한 목적으로 작성되었습니다. 실제 예매 과정에서 이를 악용하..

지난 글에서는 Netfunnel에 대한 간단한 소개와, 직링으로 접속 시 "잘못된 접근입니다."라는 오류 메시지가 뜨지 않게하는 우회 방법들을 소개해드렸습니다. 하지만 지금은 콘솔창과 크롬 익스텐션 만으로는 뚫을 수 없다는 결론에 이르렀습니다. 줄을 건너뛰지 못한다면, 줄 제일 앞에 서는 방법을 찾아야죠. 이번 글에서는 실제 사용자의 동작을 흉내 내는 방식을 소개해드릴려고 합니다. ⚠️ 이 글은 기술적인 호기심과 실험적인 분석을 위한 목적으로 작성되었습니다. 실제 예매 과정에서 이를 악용하거나 무단으로 활용하는 것은 서비스 약관 위반이 될 수 있으며, 법적 책임이 따를 수 있습니다. 또한, 이번 글에서는 코드 구현보다는 개념과 작동 원리에 집중하니 가볍게 읽어주시길 바랍니다. 콘솔과 크롬 익스텐션으로 ..

지난 글에서는 직링에 대한 간단한 소개와, 페이지 내에서 개발자 도구(F12) 혹은 크롬 익스텐션을 이용해서 몇몇 과정을 건너뛰고, 바로 좌석 선택 화면으로 이동하는 방법에 대해 소개해드렸습니다. 하지만 테스트 해본 결과 몇몇 페이지에서는 "잘못된 접근입니다."라는 오류 메시지가 뜨기도 했습니다. 이번 글에서는 이러한 오류 메시지가 뜨는 이유와, 해결 방법에 대해 이야기하고자 합니다. ⚠️ 이 글은 기술적인 호기심과 실험적인 분석을 위한 목적으로 작성되었습니다. 실제 예매 과정에서 이를 악용하거나 무단으로 활용하는 것은 서비스 약관 위반이 될 수 있으며, 법적 책임이 따를 수 있습니다. 또한, 이번 글에서는 코드 구현보다는 개념과 작동 원리에 집중하니 가볍게 읽어주시길 바랍니다. 오류 메시지 원인은?원..

Kotlin으로 만드는 우당탕탕 버스 도착 알림 앱 [4편]이 글은 프론트와 백엔드 API 연동을 진행하는 과정입니다. 앞선 글에서 화면 UI, 백엔드에서 공공API로 데이터를 받아왔다면 이제 프론트와 백엔드를 연결시켜 휴대폰 화면에서 버스 정보를 조회하고, 정류소와 버스 번호를 즐겨찾기에 등록합시다. 우선 폴더 구조입니다. com.example.busalarm├── api/ // 서버 통신 (Retrofit 관련)│ ├── BusApiService.kt // Retrofit 인터페이스: GET/POST 정의│ └── RetrofitInstance.kt // Retrofit 객체 생성 및 baseUrl 설정│├── model/ ..

이번 글에서는 직링에 대해서 다뤄보겠습니다. 공연이나 콘서트 예매를 하다 보면, 예매 시작 시간에 수많은 사람들이 몰리면서 접속이 안되는 경우가 있으셨을 겁니다. 이 혼란 속에서 자주 등장하는 단어가 직링입니다. 개발자로서 이 직링이 어떤 원리로 작동하는지, 그리고 어떻게 추적할 수 있는지 파헤쳐보려고 합니다. ⚠️ 이 글은 기술적인 호기심과 실험적인 분석을 위한 목적으로 작성되었습니다. 실제 예매 과정에서 이를 악용하거나 무단으로 활용하는 것은 서비스 약관 위반이 될 수 있으며, 법적 책임이 따를 수 있습니다. 또한, 이번 글에서는 코드 구현보다는 개념과 작동 원리에 집중하니 가볍게 읽어주시길 바랍니다. 직링이란?직링이란 직접 링크의 줄임말로 티켓 예매 절차 중 좌석 선택 화면으로 곧바로 진입할 수 ..

지난 글에서는 OpenAI Realtime API를 활용해서 음성 입력과 GPT 응답을 출력해보는 작업을 진행했습니다. 전사 정확도는 만족스럽지 못해서 총 3가지 방법으로 문제를 해결하려고 했고, 결과는 실패였습니다. 이번 글에서는 실패했던 과정과 원인, 그리고 가장 이상적인 방법을 공유하려고 합니다. 해결 방법이 궁금하신 분들은 뒤로가기 누르시는걸 추천합니다. 그리고, 혹시나 해결하신 분들은 알려주시면 감사하겠습니다 ( _ _ ) 1. aiortc처음으로 시도한 방법은 aiortc를 이용한 WebRTC 2개 연결이였습니다. aiortc는 Python에서 WebRTC 기능을 사용할 수 있도록 도와주는 라이브러리입니다. 브라우저에서 오는 WebRTC 요청인 SDP offer을 받아서 브라우저와 양방향 통..

2024년 5월, OpenAI가 발표한 GPT-4o의 Realtime API는 이제 단순한 텍스트 챗봇을 넘어, 사람처럼 듣고 말하는 실시간 AI 구현을 가능하게 만들었습니다. 기존에는 텍스트를 입력하고 응답을 기다리는 방식이 일반적이었다면, Realtime API는 WebRTC 기술을 활용해 마이크로 말하고, 즉시 AI의 응답을 듣는 구조를 제공합니다. 이 글에서는 Realtime의 공식 문서를 뜯어보고, WebRTC 기반의 Realtime API 구조와 실제 구현 포인트를 정리해보겠습니다. Realtime API 사용하기Realtime API을 사용하기 위해서는 2가지 방법이 존재합니다. 클라이언트-서버 구조에 적합한 WebRTC, 서버-서버에 적합한 WebSocket 방식입니다. 이 글에서는 Web..