티스토리 뷰

반응형
Notion에서 Tistory로 자동 업로드 #6 (notion property 자동 수정)

목표


이번에는 notion table의 상태 property를 확인해서 발행준비 완료로 되어있는 페이지를 탐색해서 어떤 페이지를 업로드 할 건지 찾아주는 것과 업로드가 완료 되었다면 카테고리를 발행준비 완료에서 발행완료로 변경하는 방법을 알아보겠습니다.

Notion table property 예시

업로드 할 페이지 찾기


지난번에 카테고리 id를 찾기 위해 notion-py모듈을 사용한 것처럼 이번에도 같은 방법으로 사용하겠습니다.

이번에는 상태라는 property를 체크해서 발행준비 완료인 page들을 반환하는 함수를 작성해 보겠습니다.

(이때 한글로 상태라는 property 명은 notion-py에서 자동으로 sangtae라는 이름으로 바뀌네요.)

# 개인 token으로 notion 접속
from notion.client import NotionClient
token_v2 = '<token>'
client = NotionClient(token_v2=token_v2)

def get_pages_readyToPost(table_url):
  # get table
  cv = client.get_collection_view(table_url)
	
  pages = []
  # check every row's status
  for row in cv.collection.get_rows():
    if row.sangtae == '발행준비 완료':
      print(row)
      pages.append(row)
	
  return pages

위와 같은 함수를 작성해서 확인을 원하는 table이 있는 notion page의 url(table_url)만 파라미터로 입력하면 상태가 발행준비 완료인 모든 페이지들을 반환합니다.

업로드 완료 시 상태 변경


위 함수를 사용해서 업로드 할 page객체들을 얻고, 업로드까지 처리 완료했다고 가정하겠습니다. 그럼 업로드 완료된 page들의 상태를 변경해주는 방법은 매우 간단합니다.

상태 property의 값을 바꿔주면 되는데, 원하는 값을 대입해주면 됩니다.

pages = get_pages_readyToPost(table_url)

"""
tistory api를 사용하여 업로드
"""

for page in pages:
  page.sangtae = '발행완료'

굳이 업로드 하지 않아도 위의 코드만 실행해보면, 발행준비 완료였던 페이지들의 상태가 모두 발행완료로 바뀌는 것을 확인할 수 있습니다.

다음 할 일


  • selenium으로 페이지 자동 export 하기


이 게시물은 Notion에서 작성되어, 자동으로 업로드 되었습니다.

반응형
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday