'스프링노트'에 해당되는 글 2건

  1. 2007.12.30 파이썬용 스프링노트 모듈
  2. 2007.12.29 파이썬에서 스프링노트 API 사용 1

파이썬용 스프링노트 모듈

프로그래밍 2007. 12. 30. 21:16

설명

  • 파이썬스프링노트 모듈로 CRUD만을 지원하는 간단한 구조입니다.
  • CRUD 작업 함수는 요청된 페이지를 문자열로 반환합니다. (XML 텍스트)
  • Delete의 경우에는 반환값이 없습니다
  • 사용자 설정을 위한 springnote.conf 파일이 필요합니다.
[springnote]
open_id: open ID
user_key: user key
app_id: application ID
app_key: application key

멤버함수

  • httpReq(method, uri, data=None): 스프링노트에 대한 HTTP REQUEST
  • createPage(): 사용자 노트에 새 페이지를 만듭니다.
  • getPages(): 사용자 노트의 페이지 전체(pages)를 읽어옵니다.
  • getPage(page_id): page_id에 해당하는 페이지를 읽어옵니다.
  • updatePage(page_id, title, memo): page_id에 해당하는 페이지의 제목을 title로, 내용을 memo로 변경합니다
  • deletePage(page_id): page_id에 해당하는 페이지를 삭제합니다
  • getTop(): 사용자의 시작 페이지(모든 페이지의 상위 페이지)의 id를 얻어옵니다.

페이지 생성

  • createPage() 는 현재시각을 제목으로 하여 새 페이지를 생성하고 생성된 페이지의 내용을 문자열로 반환합니다.

예제

  • 새 페이지를 생성하고 일련의 내용을 채워넣는 코드 (python 2.5 에서의 ElementTree를 이용하여 XML 파싱을 하였습니다.)
comm = SpringNote()
no_newpage = XML(comm.createPage()).findtext('{http://api.springnote.com}identifier')

title = '솔로라서'
memo = '행복해요ㅠㅠ'
comm.updatePage(no_newpage, title, memo)

소스코드

이 글은 스프링노트에서 작성되었습니다.


 파이썬용 모듈이 페이지 생성이 불가능하길래 새로 작성해보았다. 스프링노트에 블로그로 보내기가 있길래 한 번 티스토리로 쏴봤는데 의외로 놀라울 정도의 퀄리티였다. 하지만 코드블럭에서 조금 문제가 발생. 결국 조금 손을 봐주는 걸로 끝냈다. 사실 참고가 된 소스를 살짝 리버전한 정도에 불과하다. 반성! 파이썬이 참 재밌다. 취직하고싶다.

:

파이썬에서 스프링노트 API 사용

프로그래밍 2007. 12. 29. 02:54
링크 : http://nakada.springnote.com/pages/400945

 스프링노트 메쉬업을 작성해보기 위해 파이썬 스프링노트 API 모듈을 찾아보았다. 오픈마루 스프링노트 API 공식 도큐멘트에 링크되어 있는 파이썬 예제는 9월자로 스프링노트 인증방식이 바뀌기 전의 예제였다. 약간의 구글링 끝에 링크에 위치한 문서를 찾았지만 실제로는 ElementTree의 Element의 tag가 "{http://api.sptringnote.com}tagname" 같은 식으로 되어 있어서 위 문서 그대로는 ElementTree.findtext()를 통해서 제대로 파싱이 되지 않는 문제가 있었다. (왜일까?)

 PyDev를 쓰고 있어서 디버거를 돌려 볼 수 있었기에 망정이지 텍스트 에디터만 꼴랑 가지고 작업하고 있었으면 백날 삽질해도 알아차리지 못할 문제였다. 후덜. 갈 길이 멀다. 컴팩트한 프로젝트니까 후딱 끝내야지.


: