일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 파이썬 셀레니움
- 숫자빼고 중복되는 코드동작법
- 웹크롤링
- 카카오APi
- #비정형#카카오api#api#크롤링
- 코딩
- #크롤링 #웹문서
- #K-means #Clustering
- 위도경도
- #비정형 데이터 #네이버 #지도 #크롤링
- 파이썬
- 구글 지오코드
- 셀레니움
- #위도#경도#비정형데이터#크롤링
- 웹매크로 #세잔느
- Today
- Total
지방이의 Data Science Lab
카카오 api를 이용한 크롤링(1): 카카오 앱 키를 얻기 본문
카카오 rest api를 이용해서 크롤링 해보자
단점: 갯수제한 걸려있다.
카카오 개발사이트에서 로그인(https://developers.kakao.com)하고, 앱을 등록, 플랫폼 등록 후 따라하면 된다.
https://developers.kakao.com/docs/restapi/getting-started 를 따라하고,
https://developers.kakao.com/docs/restapi/user-management
에서도 설명하고 있으나 보기에 꽤 복잡하다.
(1) 코드 받기
(너네 이게 진짜 최선의 설명이었니)
대략난감해하다가 방법을 찾았다.
https://kauth.kakao.com/oauth/authorize?client_id=자신의 REST API키&redirect_uri=http://플랫폼 사이트도메인/redirectpath&response_type=code
굵게 표시한 부분은 내 애플리케이션의 기본 정보와 내 애플리케이션 플랫폼 설정 정보를 입력하면 된다.
이때, 사이트 도메인과 redirectpath설정이 난감했는데, jupyter notebook 켜서 나온 주소 이름대로 쓰면 된다. 예를들어, localhost:8888이 사이트 도메인이고, 내꺼의 경우 redirectpath는 주피터노트북켰을때, (localhost:8888)치고 /뒤에있는 부분을 갖다 썼다.
제대로 동작되면 이런 창이 뜬다. 동의를 누른 후,
(2) 받은 코드 내용 확인하기
이 설명에 해당하는 건, 동의 누르고 뜬 주피터 노트북의 주소창이다.
내 주소창 예시 ( http://localhost:8888/tree?code=~~~~~)
코드를 얻었으니, 사용자 토큰을 받아오자.
(3) 사용자 토큰 받기
https://kauth.kakao.com/oauth/token?grant_type=authorization_code&client_id=자기rest api 키&redirect_uri=http://플랫폼 사이트주소/redirectpath&code=(2)를 실행후 받은 코드 입력
제대로 동작이 되었다면
{"access_token":"3Hse~~~","token_type":"bearer","refresh_token":"bXh1~~~","expires_in":21599,"scope":"profile","refresh_token_expires_in":2591999}
라고 사이트에 뜬다.
(3)까지 만든 상태이고, 바로 사용할 것이라면 이 과정을 건너 뛰어도 무방
(4) 사용자 토큰 갱신
위에서 받은 토큰은 access_token은 발급 받은 후 12시간-24시간(정책에 따라 변동 가능)동안 유효한다고 함.
refresh token은 한달간 유효하며, refresh token 만료가 1주일 이내로 남은 시점에서 사용자 토큰 갱신 요청을 하면 갱신된 access token과 갱신된 refresh token이 함께 반환됨.
https://kauth.kakao.com/oauth/token?grant_type=refresh_token&client_id=자기rest api 키&refresh_token=(3)에서 받았던 refreshtoken입력
'Python Selenium > Web Crawling' 카테고리의 다른 글
[Python] 카카오 api를 이용한 크롤링(4): 카카오맵 주소 가져오기 (1) | 2019.03.03 |
---|---|
[Python] 카카오 api를 이용한 크롤링(3): 웹문서 검색 (0) | 2019.03.03 |
[Python] 카카오 api를 이용한 크롤링(2) : 위도, 경도 가져오기 (0) | 2019.03.03 |
Geocode by Awesome Table: 주소를 통해 위도, 경도 자동 불러오기 (4) | 2019.02.27 |
[Python] 셀레니움으로 네이버 지도 크롤링하기 (6) | 2019.02.27 |