오늘은 파이썬으로 핀터레스트 Pinterest 비공식 API를 통해 자동으로 핀 생성하는 방법을 알아본다. 방법은 간단하지만, 비공식적인 API를 통해 진행되는 것이라 언제 버그가 터지고 안될지 모른다. 그렇지만 현재 핀터레스트 공식 API는 현재 아예 지원 자체가 현시점에선 불가능에 가깝기 때문에 그래서 오늘은 그나마 비공식적인 노선을 ㅌ오해 파이썬 코딩으로 어떻게 핀터레스트 비공식 API를 통하여 핀 자동 포스팅을 할 수 있는 지를 알아보자.
파이썬 핀터레스트 Pinterest 비공식 API 설치하기
먼저 하기와 같은 핀터레스트 비공식 패키지를 설치하다. 먼저 하기와 같이 설치시 기본 조건은 크롬 브라우저가 깔려있어야된다. 이외 추가로 각종 에러 등이 나올 수도 있는데, 별 상관없으니 그냥 넘어가자.
!pip install py3-pinterest
파이썬 핀터레스트 Pinterest 비공식 API 로그인
먼저 하기와 같이 로그인을 한다. 단순하게 계정 이메일, 비번, 사용자이름 등을 찾아서 넣으면 된다. 계정이메일과 비번은 핀터레스트 계정관리에서 찾으면 되고, 사용자 이름은 본인 pinterest.com/(username) 에 나오는 부문이 username이다. 기억해두고 넘어가면된다. 이외 cred_root 는 별 상관없으니 그냥 없이 넘어가도 된다.
#핀터레스트 비공식 API 로그인
import random
import time
import os
from py3pin.Pinterest import Pinterest
#핀터레스트 로그인
pinterest = Pinterest(email='', #계정이메일
password='', #계정비번
username='', #사용자이름
cred_root='C:/Users/user/pinterest/') #쿠키 세션을 저장할 디렉토리 (누락시 자동생성)
#cred_root='./') #쿠키 세션을 저장할 디렉토리 (누락시 자동생성)
pinterest.login() #핀터레스트 로그인
*만일 아래와 같은 에러 코드가 있을시에도 괜찮으니 넘어가도록 하자. 정상 로그인시 해당 내용은 알아서 처리된다.
No credentials stored [Errno 2] No such file or directory: 'C:/Users/user/pinterest/your@gmail.com'
파이썬 핀터레스트 Pinterest 비공식 API 정보 알아보기
아래는 유저프로필, 사용자보드 가져오기, 이외 모든 핀 정보를 불러오는 정보이다. 유저 프로필을 통해 정상적으로 정보가 불러들어오는지를 확인하고, 이외 보드 ID 를 알아본다. 보드 ID를 아는 방법은, 'name:' 에 해당되는 아래 id값이 호출되는데, 그것이 board ID로 참고하면 된다.
#user_profile = pinterest.get_user_overview() #유저 프로필
#boards = pinterest.boards(username='username') #모든 사용자 보드 가져오기
#user_profile #유저프로필
#boards #모든 사용자보드 가져오기
#pins = pinterest.board_feed(board_id='board_id') #보드의 모든 핀 나열
#pins #보드의 모든 핀 나열
파이썬 핀터레스트 Pinterest 비공식 API 핀 생성하기
이제 board ID 까지 알았다면 바로 핀을 생성해본다. 보통은 image_file 변수를 통해 해당 이미지가 있는 디렉토리 값을 입력하고, 이외 본문, 제목, 링크가 있다면 링크값까지 넣어주면 된다. 이외 만일 이미지 호스팅 URL 주소를 통하여 입력을 할 경우에는 upload_pin이 아닌 pin ( ...) 값으로 입력하여 넣어주면 된다. 그리고 마지막으로 image_file 변수값이 아닌 image_url 변수값을 넣어 입력하면 정상적으로 호출된다고 한다.
#핀 생성하기
import json
pin_response = pinterest.upload_pin(board_id='board_id',
image_file='C:/Users/user/raw/products/product_info/product_detail_5_6.png',
description='test',
title='test',
link='link')
response_data = json.loads(pin_response.content)
'Python' 카테고리의 다른 글
[파이썬] 네이버 검색 트렌드 API 그래프 시각화까지 해보기 (0) | 2022.07.05 |
---|---|
[파이썬] 단축 링크 API 사용하기 (0) | 2022.06.29 |
[파이썬] 구글 드라이브 OCR 이미지 텍스트 추출 변환 (0) | 2022.06.26 |
[파이썬] 텍스트 내 키워드 추출 및 단어 빈도수 측정 (0) | 2022.06.26 |
[파이썬] 유투브 API 검색 활용, 유투브 mp3 변환 및 다운로드 (0) | 2022.06.26 |
댓글