[python] 카카오톡 API를 사용하여, 나에게 카카오톡 메시지 보내기

2023. 10. 24. 14:03·파이썬
728x90

1. 카카오 디벨롭스에 상단바의 내 애플리케이션을 클릭하여, 애플리케이션을 추가합니다. 

https://developers.kakao.com/

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

 

2. 추가한 애플리케이션을 클릭하면, 요약정보에 중요한 REST API 키가 나옵니다.

 

3. 왼쪽바의 동의항목을 클릭하여 다음과 같이 설정해줍니다. 

 

4. 카카오로그인 활성화 & redirect URL 설정하기

- redirect URL : https://example.com/oauth

 

 

5. 카카오 로그인하는 웹사이트에 들어갑니다.

- client_id= 뒤에는 위에서 발급받은 restAPI KEY를 입력합니다.

- scope=  이부분을 작성해주어야 나중에 친구 불러오기도 가능합니다. 

 

<주소>

https://kauth.kakao.com/oauth/authorize?client_id=자신의 restAPI KEY  입력&redirect_uri=https://example.com/oauth&response_type=code&scope=profile_nickname,friends,talk_message

 

 

6. 위에 code= 뒷부분을 저장해줍니다. (인가코드)

7. 토큰을 요청하는 코드를 작성 후 실행해줍니다.

import requests

url = 'https://kauth.kakao.com/oauth/token'
rest_api_key = '411503d9d9ee7b73d3b46fdbb75a3911'
redirect_uri = 'https://example.com/oauth'
authorize_code = '6번에서 받은 인가코드를 작성'

data = {
    'grant_type':'authorization_code',
    'client_id':rest_api_key,
    'redirect_uri':redirect_uri,
    'code': authorize_code,
    }

response = requests.post(url, data=data)
tokens = response.json()
print(tokens)

# json 저장
import json
#1.
with open(r"D:\heeyeon\codes\kakao_code.json","w") as fp:
    json.dump(tokens, fp)

<결과>

 

8. 저장된 json 파일을 읽어서 나에게 카톡메시지를 보내는 코드를 작성합니다.

import requests
import json

#1.
with open(r"D:\heeyeon\codes\kakao_code.json","r") as fp:
    tokens = json.load(fp)


url="https://kapi.kakao.com/v2/api/talk/memo/default/send"

# kapi.kakao.com/v2/api/talk/memo/default/send 

headers={
    "Authorization" : "Bearer " + tokens["access_token"]
}

data={
    "template_object": json.dumps({
        "object_type":"text",
        "text":"Hello, world!",
        "link":{
            "web_url":"www.naver.com"
        }
    })
}

response = requests.post(url, headers=headers, data=data)
response.status_code
print(response.status_code)
if response.json().get('result_code') == 0:
	print('메시지를 성공적으로 보냈습니다.')
else:
	print('메시지를 성공적으로 보내지 못했습니다. 오류메시지 : ' + str(response.json()))

<결과>

끝~

728x90
저작자표시 비영리 변경금지 (새창열림)

'파이썬' 카테고리의 다른 글

[AI, python] AI HUB 데이터셋의 어노테이션(Annotation, label)을 darknet format으로 변환하기 (BBOX일 경우)  (0) 2023.08.16
[python] txt 파일 읽고 수정하기  (0) 2023.08.10
[python] 폴더에서 jpg 파일만 옮기기  (0) 2023.08.02
[python] 디렉터리 내에서 원하는 파일 개수만큼 옮기기  (2) 2023.08.02
[파이썬] 디렉터리마다 파일 n개씩만 다른 폴더로 복사하기  (0) 2023.04.05
'파이썬' 카테고리의 다른 글
  • [AI, python] AI HUB 데이터셋의 어노테이션(Annotation, label)을 darknet format으로 변환하기 (BBOX일 경우)
  • [python] txt 파일 읽고 수정하기
  • [python] 폴더에서 jpg 파일만 옮기기
  • [python] 디렉터리 내에서 원하는 파일 개수만큼 옮기기
Heeyeon Choi
Heeyeon Choi
개발자 최희연입니다♥
    250x250
  • Heeyeon Choi
    CHY'S IT
    Heeyeon Choi
  • 전체
    오늘
    어제
    • 분류 전체보기 (247)
      • 웹개발 (34)
      • 앱개발 (7)
        • 안드로이드 스튜디오 (2)
        • React Native (4)
      • 게임 개발 (5)
      • 인공지능 (9)
        • 정보 (4)
        • 수강후기 (3)
      • 빅데이터 (4)
        • 정보 (4)
        • 수강후기 (0)
      • 자바 (26)
        • JUST_JAVA (11)
        • 백준 알고리즘(자바) (15)
      • 파이썬 (18)
        • 실습문제 (9)
        • 데이터분석 (1)
        • 코딩테스트 공부 (2)
      • 수업후기 (23)
        • 확률과 통계 (18)
        • 데이터 분석 도전! 문제풀이 (5)
      • 대외활동 (26)
        • 박람회 (1)
        • 코딩월드뉴스 (5)
        • starters 부트캠프 feat.웅진씽크빅 (20)
      • 자격증 (2)
        • IT관련 자격증 (2)
        • 어학, 기타 자격증 (0)
      • 깃허브 (5)
      • 전문가 인터뷰 (2)
      • IT소식 (2)
      • c# (33)
        • 백준알고리즘 (16)
        • WPF (9)
      • CS (44)
        • 네트워크 (12)
        • 운영체제 (15)
        • 데이터베이스 (9)
        • 자료구조 (8)
      • 기타 (3)
  • 블로그 메뉴

    • 포트폴리오
    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
    • 노션
  • 공지사항

  • 인기 글

  • 태그

    IT부트캠프
    Next.js
    취업부트캠프
    알고리즘
    부트캠프후기
    개발자부트캠프
    스타터스부트캠프
    유데미부트캠프
    프론트엔드
    프로그래밍
    백준
    파이썬
    개발
    Java
    It
    유데미
    스타터스
    자바
    c#
    코딩
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Heeyeon Choi
[python] 카카오톡 API를 사용하여, 나에게 카카오톡 메시지 보내기
상단으로

티스토리툴바