본문 바로가기

Python27

[Python] Requests 패키지 요청 별 활용 방법 Python의 requests 라이브러리는 HTTP 요청을 보낼 때 데이터를 전달하기 위해 json, data, params 의 옵션이 존재합니다. 이들은 각각 사용하는 목적과 방식이 다릅니다.  1. params: URL 쿼리 문자열에 데이터를 추가 사용 목적: GET 요청이나 URL에 데이터를 추가할 때 사용됩니다.전송 방식: 쿼리 문자열로 데이터를 URL에 포함합니다.요청 예시import requestsurl = "https://example.com/api"params = {"key1": "value1", "key2": "value2"}response = requests.get(url, params=params)print(response.url) 출력 예시https://example.com/api?.. 2025. 1. 23.
[Python] Supabase 연결 오류 Supabase 프로젝트 생성, 데이터를 csv로 업로드 한 후python으로 조회하기 위해 sqlalchemy 와 관련 패키지를 설치했다.pip install sqlalchemy psycopg2-binary .env 파일에 DB 정보를 입력 후 데이터 조회를 시도했는데from dotenv import load_dotenvfrom sqlalchemy import create_enginefrom sqlalchemy.orm import sessionmaker, declarative_baseimport osimport psycopg2, tracebackload_dotenv()user = os.environ["user"]password = os.environ["password"]host = os.environ[.. 2024. 12. 31.
[Python] 날짜 시간대 변경하기 1. 문제프론트엔드에서 날짜를 선택하고 (단일, 범위 날짜 선택 가능)백엔드에서 날짜에 맞는 데이터를 찾아서 보내주려고 하는데, 둘이 날짜가 맞지 않았다.프론트엔드에서 보내는 날짜를 확인 해 보니, 로컬 시간대와 일치했지만백엔드에서는 UTC로 변환하여 처리하고 있던게 문제인 것으로 확인했다. 2. 시간대 변환 코드from datetime import datetimeimport pytz# 한국 표준시 설정kst = pytz.timezone('Asia/Seoul')# ISO 8601 형식의 UTC 데이터utc_date = "2024-12-07T00:00:00Z"# UTC 데이터를 KST로 변환dt = datetime.fromisoformat(utc_date.replace("Z", "+00:00")).asti.. 2024. 12. 9.
[Python] 비트코인 자동매매 - 비동기 요청하기 1. 비동기 요청의 필요성업비트 거래소에서 원화로 거래할 수 있는 코인을 대상으로 데이터를 받아서각종 지표를 추가하고, 머신러닝을 진행한 후 예측 데이터들 중 적절하다고 판단되는 것들을 선별하여 투자를 진행한다.이 계산과정이 약 26 ~ 30초 가량 소요되는데, 실제 환경이라면 이 정도 시간은 기다릴 수 있었다.하지만, 모델 별 성과 측정을 위한 테스트 환경이라면 여러 일을 계산해야 하기 때문에 상당한 시간이 소요된다. 비동기 요청이라고 해서 요청 값을 더 빨리 받을 수 있는건 아니다.비동기 요청의 강점은 요청 건수가 다수일 때, 앞의 요청의 응답을 기다리지 않고 그 다음 요청을 진행하며앞의 요청에 대한 응답이 돌아오면, 이후 작업을 진행하는 방식이다. 2. 비동기 요청 예시동기적 요청 : 요청 1 ->.. 2024. 6. 18.
[FastAPI] SQL Alchemy 연결 오류 해결 1. DB 연결 주소 수정 필요기존 프로젝트는 AWS RDS MySQL로 연결해서 구현하였으나, 프리티어 기간이 종료되었다.비용이 많이 발생하지 않는다면 RDS를 종료하지 않고 유지하려고 했으나, 개인 프로젝트라서 데이터는 그다지 존재하지 않는데유지 비용이 너무 많이 들어서 프로젝트와 RDS 모두 종료하였다.프로젝트가 있는 EC2는 다른 프로그램이 동작중이라서 비용은 계속 나갔는데RDS 유지 비용 때문에 프로젝트를 내려 둔 것이 아깝다고 생각되어서 무료 DB를 사용해서 다시 살려두기로 생각했다.그래서 찾은 것이 supabase, postgreSQL 다. 2. 연결 DB 수정을 위한 초기 작업프로젝트에서 DB랑 연결하는 방식은 SQL Alchemy로 되어있고, 같은 관계형 DB로 이동하는 것이기 때문에연결.. 2024. 6. 5.
[Python] 비트코인 자동매매 - 백테스팅 이전 글 - 코인 종목 선정 하기 1. 백테스팅 전 기본 세팅먼저, 투자 과정과 최종 결과를 알아보기 위해 아래의 내용을 세팅한다.시작 금액종료 금액수익이 발생한 날들의 수손실이 발생한 날들의 수최대 수익 비율 (%)최대 손실 비율 (%)코인 별 투자 이력이를 코드로 작성해보자class Back_Testing: def __init__(self, seed, duration): self.duration = [] # 테스트 기간 # 시작과 종료 금액 self.start_seed = seed self.end_seed = seed # 수익과 손실 기간 self.revenu_count = 0 self.loss_count = 0 .. 2024. 5. 15.