본문 바로가기

Tools/Python

(14)
[FastAPI] FastAPI이용한 백엔드 구축 가이드라인 (2) parameter 1. URL과 Parameters  1.1 URL 구성요소 1.2 Parameters  Query Parameters는 URL에서 데이터를 전달하는 방법 중 하나입니다.웹 API에서 클라이언트가 서버에 데이터를 요청할 때, 경로 뒤에 ?를 붙이고 key=value 형식의 쿼리 문자열을 사용하여 추가 데이터를 보낼 수 있습니다.  📌 Query Parameters 구조/func?key1=val1&key2=val2​func → 실행할 함수(엔드포인트)? → 쿼리 매개변수(Query Parameters) 시작key1=val1 → 첫 번째 매개변수 (key1의 값은 val1)& → 여러 개의 매개변수를 연결할 때 사용📌 Python 코드에서 활용def func(key1, key2): result = doS..
[FastAPI] FastAPI이용한 백엔드 구축 가이드라인 (1) 설치 및 Uvicorn을 통한 테스트 *위 글은 Perplexcity를 기반으로 작성된 글입니다.  FastAPI를 이용한 백엔드 구축 가이드라인FastAPI는 Python기반의 백엔드 프레임워크입니다.높은 성능과 개발자 친화적인 특징을 지어, 웹 애플리케이션 개발에 인기를 얻고 있는데요,FastAPI를 사용해서 견고한 백엔드 시스템 구축하는 과정을 초기설정,배포,모범 사례를 통해 살펴보도록하겠습니다.  1. FastAPI 소개FastAPI는 REST API 원칙을 중심으로 설계된 Python기반 백엔드 프레임워크임. 주요 특징은 다음과 같습니다.1) 비동기 프로그래밍 지원 async 및 await 키워드를 사용하여 비동기 I/O 작업을 손쉽게 처리 가능I/O 바운드 작업(데이터베이스 요청, API 호출 등)에서 성능 향상2) 자동 API문..
[Crawler] 네이버 지도 크롤링 - 여러 URL을 하나의 탭에서 크롤링 검색어가 정해져있을 때, 드라이브 한탭 에서 크롤링 하는 방법 📌크롤링할때마다 새 창이 켜져서 예상시간 3일뜨는 거보고 남기는 기록,,- 하나의 탭에서 크롤링 할수 있게 수정했고 10시간정도로 줄였다. 네이버 지도를 크롤링할 때, 주로 페이지번호 1, 페이지 번호 2 등 페이지 번호 기준으로 크롤링을 한다.그러나 검색어를 지정하고, 검색어별/URL별로 크롤링을 해야할 때 속도와 성능을 최적화하는 코드를 설명해보고자 한다.   def crawl_multiple_naver_places(urls_data): driver = None all_places_data = [] try: # Chrome 드라이버 한 번만 초기화 driver = webdriver.Chrome()..
[GIT] 깃으로 협업하기 가이드라인 Git 문법1. commit 규칙feat: 주요파일 변경사항 설명fix: css나 이미지 변경 사항 설명docs: 주석만 변경 설명이렇게 3가지 규칙으로 작성2. Git 써보기git init : 현재 디렉토리를 Git이 관리하는 프로젝트 디렉토리(=working directory)로 설정하고 그 안에 레포지토리(.git 디렉토리) 생성git config user.name 'codeit' : 현재 사용자의 아이디를 'codeit'으로 설정(커밋할 때 필요한 정보)git config user.email 'teacher@codeit.kr' : 현재 사용자의 이메일 주소를 'teacher@codeit.kr'로 설정(커밋할 때 필요한 정보)git add [파일 이름] : 수정사항이 있는 특정 파일을 staging..
[python] 07. 패키지와 모듈 Module (모듈) 개념 설명 예시 모듈 (Module) 독립적인 기능을 가지고 재사용 가능한 프로그램 단위 calculater.py, test_module.py 모듈의 종류 표준 모듈, 사용자 정의 모듈, 3rd Party 모듈 모듈 사용 방법 import 모듈 import 모듈 as 별칭 from 모듈 import 함수 등 import test_module import my_module as mm 메인 모듈 및 하위 모듈 메인 모듈은 현재 실행 중인 모듈, 하위 모듈은 import된 모듈 if __name__ == '__main__': Package (패키지) 개념 설명 예시 패키지 (Package) 모듈들을 모아 놓은 디렉토리(폴더), 라이브러리의 최상위 단위 my_package, Root패키지...
[python] 06.객체지향프로그래밍 객체지향 프로그래밍이란 ?(Object Oriented Programming) 프로그램을 구성하는 변수와 함수들에서 서로 연관성있는 것끼리 묶어서 모듈화하는 것을 개발하는 언어들을 객체지향 프로그래밍 언어라고함 # Instance(객체) - 연관성 있는 값들과 그 값들을 처리하는 함수(메소드)들을 묶어서 가지고 있는 것(값). - 객체의 구성요소 - 속성(Attribute) - 객체의 데이터/상태로 객체를 구성하는 값들. - 메소드(method) - 객체가 제공하는 기능으로 주로 Attribute들을 처리한다. ## Class(클래스) 정의 - class란: 객체의 설계도 - 동일한 형태의 객체들이 가져야 하는 Attribute와 Method들을 정의 한 것 - 클래스를 정의할 때 어떤 속성과 메소드를 ..
[python] 05.함수 | return, value, parameter 함수 입력 변수와 출력 변수 간의 대응관계를 정의한것 하나의 작업과 기능, 동작을 처리하기 위한 사용자 정의 연산자 함수를 정의(define) : 함수를 구현해 파이썬 실행환경에 등록하는 것 함수를 호출(call) : 함수 사용 함수 구현 선언부와 구현부를 작성한다 def 함수이름( [변수, 변수, ..]): # 선언 부(Header) : 함수 이름, 매개변수 지정 # 구현 부(body) : 실행문 작성 실행구문1 실행구문2 실행구문3 … [return [결과값]] return value(반환값) parameter(매개변수) 기본값이 있는 parameter positional argument와 keyword argument 가변인자(Var args) 변수의 유효범위 지역 변수(local variable)..
[python] 04.제어문 컴프리헨션 | 제어문(조건문,반복문)과 간단한 제어문(컴프리헨션)을 배워보자 ※ 제어문이란? 기본적으로 프로그램은 순차구조를 가지는데 그 실행흐름을 제어하는 구문을 만드는 문법이 제어문 logic : 순차적으로 적은 코드 알고리즘 : 해결해야하는 문제에 대한 문제풀이, logic에 따라 순차적으로 작성됨 제어문 : 알고리즘 안에서 실행됨. 순차적으로 작성되는 구조 #순차 구조 - 순차적으로 실행되어야만 함 n1 = input() num1 = int(n1) n2 = input() num2 = int(n2) oper = input("연산자") result = num2 + num1 print("결과:",result) 제어문의 종류 1. 조건문(if문) : 연산자로 입력된 값이 무엇이냐에 따라 해야할 일이 달라지는 것 2. 반복문 : 하나의 코드로 여러번의 실행을 하는 것 - while..