본문 바로가기
반응형

Side Project20

AWS와 python으로 페이스북 챗봇 만들기 (1) - 아키텍처 개요 페이스북 챗봇으로 아티스트 이름을 검색하면 아티스트의 정보와 spotify 링크를 알려주자! FLOW 저장소에 아티스트가 없는 경우 spotify API를 호출한다. spotify에 해당 아티스트가 없는 경우 "Could not find artist. Please Try Again!" spotify에 해당 아티스트가 있는 경우 데이터를 가져온다. RDS에 데이터를 저장한다. (insert) "We added artist. Please try again in a second!" 저장소에 아티스트가 있는 경우 RDS에 select 쿼리를 수행하여 데이터를 가져온다. image url, genres 정보를 페이스북 API를 통해 제공한다. 아키텍처 1. 페이스북 챗봇 메신저와 AWS가 통신한다. API .. 2020. 9. 27.
[AWS] 패스트캠퍼스 강의에서 사용했던 AWS 대표 서비스 8가지 패스트캠퍼스 강의를 들으며 사용했던 AWS 서비스를 정리한다. 어떤 용도인지 이해하고, 나중에 적재적소에 활용해보자. (언젠가) 1) RDS RDB를 손쉽게 구축할 수 있는 서비스이다. MySQL, MariaDB, Oracle 등 원하는 RDB를 선택할 수 있다. 또한, 리소스도 설정할 수 있다. (메모리, CPU 등) DB 인스턴스를 생성하면 endpoint가 생성된다. endpoint URL을 통해 DB에 접근한다. 2) S3 AWS의 저장소이다. 버킷 단위로 생성한다. 버킷 이름은 유일하다. 각 버킷 내에서 디렉토리 구조로 파일을 저장한다. 3) Dynamo DB key-value 기반의 DB이다. 4) Lambda 별도의 서버 없이 코드(python, java 등)를 수행할 수 있다. Lambda.. 2020. 9. 27.
[python] boto3를 통해 AWS 서비스와 연동하기 (boto3 예시 2가지) python으로 AWS 서비스를 사용하고 싶다면, boto3 패키지를 쓰면 됩니다. boto3의 사용 예시 2가지를 정리해보려고 합니다. 그 전에 AWS CLI를 설정해둔 상태여야 합니다. AWS CLI 설정하는 방법은 따로 정리해두었습니다. boto3를 설치하지 않았다면, pip install boto3 를 실행하여 설치합니다. 1) S3에 파일 넣기 import boto3 import pandas as pd # 딕셔너리 -> DataFrame -> parquet 파일로 변환 top_tracks = {'id': ['35q0DyRH5bIXDoFGWJBjmC'], 'artist_id': '0kRAVpQhUUArA8UnYwEdeZ', 'name': ['Lonely Night'], 'popularity': [.. 2020. 9. 27.
[python] 파일 한 줄씩 읽어서 저장하기 제가 좋아하는 아티스트 리스트 입니다. 음색 좋은 아티스트들이 좋당. 노래 주제가 다양하면 더 좋고! 사운드클라우드에서 커버곡 듣는 것도 좋으다! 폴킴 스텔라장 아이유 크러쉬 태연 치즈 ed sheeran 악동뮤지션 이하이 오왠 G-DRAGON 지코 창모 박원 볼빨간사춘기 10cm 권진아 김필 혁오 적재 BTS 수지 아무튼! python으로 아티스트를 하나씩 불러와서 저장하고 싶다면? (갑자기 IT냄새 풍기기) import csv artists = [] with open("artist_list.csv","r", encoding="utf-8") as f: raw = csv.reader(f) for row in raw: artists.append(row[0]) artist라는 배열에 제가 좋아하는 아티스트들.. 2020. 9. 27.
[python] spotify API 호출하여 json 데이터 받아오고 처리하기 개요 python을 사용하여 spotify API 를 호출하여 json 데이터를 받아온다. 이 데이터를 원하는 형태로 처리한다. Spotify API 인증 방식 대부분의 API 호출은 인증이 필요하다. 본 포스팅에서는 아래와 같은 인증방식(client_credentials)을 사용한다. API를 호출할 때 client_id, client_secret, grant_type(=client_credentials) 값을 넘겨준다. 그러면 spotify가 access_token을 준다. 이후 API를 호출할 때 header에 access_token 값을 포함하여 요청하면 된다. client_id, client_secret 값은 spotify app을 생성하여 발급받는다. python requests 패키지 pyt.. 2020. 9. 17.
[python] python으로 mysql connect 하기 1. pymysql 패키지 설치 pip3 install pymysql 2. connection 정보를 변수에 저장하기 host = "mysql.hostname.com" port = 3306 database = "test" username = "sunny" password = "sunny123" 연결할 mysql 서버의 host, port 를 저장한다. 또한 접근할 database명, user, password를 저장한다. 당연히 해당 user가 database 권한이 있어야 접근 가능하다. 3. connection 생성하기 conn = pymysql.connect(host, user=username, passwd=password, db=database, port=port, use_unicode=True,.. 2020. 8. 29.
반응형