구글 시트는 웹 게시 메뉴를 통해서 외부에서 데이터를 끌어올 수 있다. 자동 웹게시 메뉴가 있어서 변동된 사항을 외부에서도 쉽게 알 수 있을 것이라 생각하기 쉽다. 물론 구글 시트 api를 이용하면 더욱더 많은 일을 할 수 있다. 심지어는 DB 처럼 쓰기에도 좋다.
https://developers.google.com/sheets/samples/
자동 웹게시는 csv를 curl이든 뭐든으로 긁어오고 보면 업데이트 동기화가 잘 안 맞는 것을 알수 있다. 즉, 브라우저 상에서 수정한 내용이 csv에 바로 반영이 되지 않는 것이다. 구글 시트 api 를 이용할 때는 빠닥빠닥 갱신되어 넘어오는데 웹 게시 기능을 통하면 동기가 안 맞는다.
이 때는 그냥 GET 인터페이스 상에서 제공된 기능을 쓸 수 있다. 매뉴얼 같은 것에서는 못 찾았는데, 웹 검색하다 발견했다... 하아..
https://spreadsheets.google.com/tq?upd:&tqx=out:csv&tq=&key=_니키-&gid=_니시트아이디_
여기서 요즘은 upd: 태그다. 저 태그가 있으면 웹 게시를 새로 하고 결과를 보내준다. md5 때리면 변환 여부를 알 수 있다.
샘플과 보고서 api를 참고하면 어지간한 일은 그냥 구글을 이용하는 것이 낫다는 생각이 든다. https://codelabs.developers.google.com/codelabs/sheets-api/#10
하루 40000 콜 까지는 공짜인 것 같다. https://developers.google.com/sheets/limits
이 참에 다른 구글 제품군을 연구해보면 이런저런 노가다를 많이 줄일 수 있을 것 같다.
끗.