이번에는 야후블로그를 customizing 해 보려고 한다.

그동안 야후에서 만들어 주었으면 하고 있던 기능 중 하나인데, 이제 적당한 방법이 생겼으니 직접 만들어 쓸 수 있게 되었다.


Chapter1. 야후블로그 RSS의 글제목에 게시판(폴더) 주석달기


우선 피실험 블로그를 고른다. 이 블로그에는 게시판이라는 개념이 목성 표면의 수증기만큼도 없으므로 적당한 다른 블로그를 골라야 한다.

실험대상으로 선택된 블로그는 지구별 여행자라는 미소녀(?) 블로그. 얼핏 봐도 20여개의 게시판이 있어 적당한 실험체 되겠다.

현재 해당 블로그의 RSS는 아래와 같이 표현된다.

눈이 가로로 내린다
환경 문제의 심각성을 알아야 합니다.
북경 여행기 전에..
북경을 다녀와서..
북경, 그리고 자전거
아쉬움을 남긴 79회 아카데미 시상식
바벨
발칙한 스팸전화
요즘 내가 푹~ 빠져 있는 것


이제 위 글제목에 각각의 글이 속한 게시판의 제목을 넣어보자.
우선 야후에서 제공하는 RSS에는 어떤 정보를 포함하고 있는지 알아야 한다.

눈이 가로로 내린다
link http://kr.rd.yahoo.com/community/blog/myblog/rss/mesg20/*http://
kr.blog.yahoo.com/mizzi202/1336132
y:title 눈이 가로로 내린다
category 잡.다.구.리.일.상
guid http://kr.blog.yahoo.com/mizzi202/1336132
title 눈이 가로로 내린다
pubDate Wed, 07 Mar 2007 18:39:09 +0900
description


첫번째 글인 '눈이 가로로 내린다'라는 글은 내부적으로 위와 같이 제목 외에도 link, title, category, pubdate와 같은 정보들을 담고 있다.

그 중에서 이번 예제에서 활용할 것이 바로 category.

현재 야후와 이글루스의 경우에는 각 블로그의 게시판명을 category로 표시하고 tistory는 태그를 category로 표시하고 있다. 한국이 원래 좁지만 표준 같은거 잘 안지켜지는 동네이기 때문에 당분간은 이렇게 각 업체들의 사정에 맞게 만들어진 각각의 RSS들을 써야만 할 것 같다.

여튼 예제의 목표는 단순히 '글제목 앞에 블로그 게시판 제목을 넣어주자'이므로 이제 넣어주기만 하면 되겠다.

완성된 예제이다. [예제보기]
1. Fetch 모듈을 이용 RSS를 읽어온다
2. Regex 모듈을 이용 title의 앞에 category 정도를 넣어준다.
3. 끝



Regex 모듈이 뭐냐고 물어보는 사람은 없길 바란다.
사실 나도 그게 뭔지 모르고 있으며 그냥 Pipes에서 제공하는 예제를 단순히 응용해서 쓰고 있을 뿐이다. 정말 궁금하면 그런 것은 옆에 있는 개발자들에게 점심이라도 같이 하면서 물어보시길.



Chapter2. 야후 블로그 폴더별 RSS 생성기


간단히 RSS 커스트마이징이 끝났다. 너무 허무하게 끝나버려서 좀더 이야기를 끌고 가보려 한다.

두번째 예제는 야후ID와 폴더명을 입력받아 각 폴더명 RSS를 생성해 보자.



첫번째.
우선 간단하게 User ID를 입력받아 야후 블로그 RSS 주소를 생성하는 모듈을 조합해 보자
1. 야후ID를 text 형식으로 입력받고 (test를 위해 debug 항목에 mizzi202 입력해 놨음)
2. 입력받은 ID의 앞 뒤로 필요한 text를 붙여서 야후블로그 RSS의 형식으로 바꿔줌
3. text 형식을 URL 형식으로 바꾸기 위해 URL Builder 이용
4. 완성된 url을 Fetch에 붙임



두번째.
첫번째 예제에서 사용한 regex 모듈을 다시 한번 이용해 생성된 RSS의 제목에 폴더 제목이 나오도록 하자.




세번째.
Text Input 모듈을 이용해 구분할 폴더 제목을 입력받고 Filter 모듈을 이용해 해당 내용이 제목에 포함된 것만으로 거른다.




이제 완성되었다. pipe를 실행해서 RSS를 생성해 사용을 하면 되는데, 현재는 에러가 난다 -_-;;;

아마도 중간에 파라메터로 들어간 폴더 제목에서 오류가 나는 것 같은데 pipe에서 한글을 아직 지원하지 않고 있으나 차후 이 부분은 해결이 되지 않을까 기대를 한다.

결론은 이번 예제는 실패 OTL

자세히 설명하자면 말이 좀 복잡하긴 한데, 특정인의 이글루스 블로그를 이글루 링크에 포함시켜 놓은 블로그들을 찾아주는 검색엔진을 한번 만들어 보았습니다.

백문이 불여일견이라고 결과 페이지를 한번 보시면 이해가 빠르실 겁니다.

예시된 결과 페이지는 유명하신 디지털 컬럼니스트이자 제 군대고참인 oojoo님을 이글루 링크에 포함해 놓은 이글루스 블로그들을 검색해 놓은 것입니다.
[결과보기]

사용방법은 찾고자 하는 이글루스ID를 입력하고 검색버튼(Run Pipe)를 클릭하면 됩니다.

구현방법은 야후의 Site Explorer를 이용해 해당 블로그 url이 링크되어 있는 페이지들을 이글루스 도메인 내에서 검색하고 그 결과 중에 top 페이지가 아닌 개별글들의 결과를 하나씩 지워버렸습니다.

Filter 모듈이 좀더 발전되어 있다면 아래와 같은 꼼수를 부리지 않아도 깔끔하게 만들 수 있을듯 한데, 하여튼 현재의 pipe 기능으로만 구현을 하면 이 정도면 될 것 같네요. 좀더 깔끔한 pipe를 다른 분들이 만들어 주시길 바래 봅니다.


평소에 자신의 블로그가 포함된 다른 이글루들이 궁금하셨다면 한번 사용해 보세요.

검색해 보기


PS.1 아래 스크린샷에서 버그가 있는데, Filter의 Rule 부분에 title이라고 되어 있는것은 사실은 link입니다. pipe의 버그인듯 한데 link로 설정을 해 저장을 하고 다시 열면 어느새 title로 바뀌어 있더군요. 그러나 동작은 제대로 합니다. 단지 보여주는 부분에서만 오류가 있는듯.

PS.2 처음에 테스트를 하면서 제가 알고 있는 이글루스 인기블로그인 lezhin님의 블로그를 default로 놓고 테스트를 해 보았는데, 검색결과가 너무 안나오더라구요. 뭔가 버그가 있는줄 알고 고심을 했었는데 다른 분의 블로그를 입력해서 보니 그럭저럭 결과가 나왔습니다. 역시나 lezhin님의 블로그는 모두들 숨어서 보시는 모양. 혹은 야후 site explorer의 자체 필터링?