Api 개발/flask 16

네이버 파파고 api활용 api 만들기

한국어를 중국어로 번역api post /chinese 바디 json {"content" : "안녕하세요~" } https://developers.naver.com/apps/#/myapps/IrV0g7biQMVi5f1qm545/config 애플리케이션 - NAVER Developers developers.naver.com req_data = {'source' : 'ko','target':'zh-CN','text' : data['content'] } header headers = {'X-Naver-Client-Id' : Config.NAVER_CLIENT_ID, 'X-Naver-Client-Secret' : Config.NAVER_CLIENT_SECRET, 'Content-Type': 'application..

Api 개발/flask 2023.01.13

네이버 검색 api 활용

오픈api 활용서버 뉴스 검색 api get /news?keyword=자동차 &limit=30 open restful open api를 호출할때 사용하는 라이브러리 → requests 이건 flask 에 들어있는 라이브러리 request랑 다르다 import requests https://developers.naver.com/docs/serviceapi/search/news/news.md#%EB%89%B4%EC%8A%A4-%EA%B2%80%EC%83%89-api-%EB%A0%88%ED%8D%BC%EB%9F%B0%EC%8A%A4 검색 > 뉴스 - Search API 검색 > 뉴스 뉴스 검색 개요 개요 검색 API와 뉴스 검색 개요 검색 API는 네이버 검색 결과를 뉴스, 백과사전, 블로그, 쇼핑, 영화, ..

Api 개발/flask 2023.01.13

사진과 내용을 동시에 올리는 api

사진과 내용을 올리면,db에 저장 샘플테이블 posting - id -content imgul post posting form-data - photo -content s3에 저장 current_time = datetime.now() new_file_name = current_time.isoformat().replace(':' , '_' ) + '.jpg' print(new_file_name) #파일명을, 유니크한 이름으로 변경한다 #클라이언트에서 보낸 파일명을 대체 file.filename = new_file_name # s3에 파일을 업로드 하면 된다. # s3에 파일 업로드 하는 라이브러리가 필요 # 따라서, boto3 라이브러리를 이용해서 업로드 한다. # 라이브러리 설치는 pip install b..

Api 개발/flask 2023.01.13

s3에 저장된 이미지를 객체 탐지하는 API 만들기

get /object_detection?filename=abc.jpg 오브젝트 디텍션 결과를 응답하는 API filename의 value값은 변환해준 파일네임 aws IAM으로 가서 rekognition 권한을 추가해줘야 한다 client = boto3.client('rekognition', 'ap-northeast-2', aws_access_key = Config.ACCESS_KEY , aws_secret_access_key = Config.SECRET_ACCESS) boto를 이용해 response = client.detect_labels(Image={'S3Object':{'Bucket':Config.S3_BUCKET , 'Name':filename}} , MaxLabels = 10 ) 결과물이 나옴..

Api 개발/flask 2023.01.12

이미지 업로드 api 만들기

어플에 사진을 보내면 사진을 s3버킷안에 저장하고 관리하는 어플 먼저 s3 버킷먼저 생성 버킷 만들기 https://aws.amazon.com/ko/sdk-for-python/ Python용 AWS SDK Python용 AWS SDK인 boto3를 사용하여 AWS를 빠르게 시작하십시오. Boto3를 사용하면 Python 애플리케이션, 라이브러리 또는 스크립트를 Amazon S3, Amazon EC2, Amazon DynamoDB 등 AWS 서비스와 쉽게 통합할 수 있습 aws.amazon.com pip install boto3 lmabda에는 기본으로 설치되어있고 로컬에만 설치해주면됨 파일을 s3에 업로드 API POST / upload form-data 로 사진 파일 전송 -photo : 사진파일 이때..

Api 개발/flask 2023.01.12

github로 lambda CI/CD하기

https://seonggongstory.tistory.com/181 API 소스코드 lambda에 배포하기 1cpu 1ram을 할당받는 ec2와 다른 서버리스(serverless) 방식 : 호출양만큼 금액만 낼경우 서버관련된 부분은 aws가 알아서 처리해줌( 유동사용자 만큼 자동으로 트래픽을 늘려줌) 대표적 : lambda , API Gate seonggongstory.tistory.com 이때 받은 aws 권한 key를 입력해줌 AWS_ACCESS_KEY_ID: ${{secrets.AWS_ACCESS_KEY_ID}} AWS_SECRET_ACCESS_KEY: ${{secrets.AWS_SECRET_ACCESS_KEY}} 이렇게 바꿔줌 name: serverless deploy on: push: bran..

Api 개발/flask 2023.01.12

serverless 계층(layer) 설정

정상적인 순서로 서버리스를 만들었을때 send했을때 이런 오류가 나온다면 로컬에서 lambda에 배포할때 우리 로컬에는 여러 라이브러리가 깔려있는 상태로 작업하고 lambda로 보낼때 필요한 라이브러리를 다 설치해주는데 이 라이브러리하고 소스코드 전부 다합처서 50mb가 넘으면 안된다는거 람다에는 소스코드만 넣어놓고 람다의 레이어를 만들어서 라이브러리(넘파이,판다스 등)를 미리 설치한뒤 람다실행될때 붙여준다. numpy pandas 라이브러리를 lambda 레이어로 만드는 방법 aws 클라우드안에 ec2 람다가 있다면 ec2에 접속해 람다와 같은 파이썬 환경을 구축 ssh:ec2 접속(리눅스) pypi접속 후 넘파이 판다스 설치해서 zip파일로 압축후 ftp: 로컬로 옮겨주고(파일질라) 로컬에서 람다로 ..

Api 개발/flask 2023.01.11

serverless 서버 서울로 바꾸기

지금서버는 aws의 us-east-1리젼에 배포된것이다 따라서 리젼을 서울로 바꿔서 배포해본다 region을 새로 만들어서 입력해줌 그리고 deploy하게 되면 이런 오류가 나온다. 맨위에 org와 app을 삭제 해준다 그리고 다시 배포 배포시 credentials로 실패하면, 로컬에 한번만 credentials 셋팅 해주면 된다 https://www.serverless.com/framework/docs/providers/aws/guide/credentials/ Serverless Framework - AWS Credentials The Serverless Framework documentation for AWS Lambda, API Gateway, EventBridge, DynamoDB and much..

Api 개발/flask 2023.01.11