mechanize로 인트라넷 공지사항 RSS로 만들기

보통 학교나 회사에서 알려주지도 않고 뭘 진행해 놓고서 나중에 왜 인트라넷에 공지 올렸는데 안 봤냐고 그러는 경우가 종종 있습니다. 옛날에 있던 학교에서는 그래도 과사에서 여러 방법으로 알려주려고 시도를 많이 했었는데, 새로 온 학교는 이거 거의 알아서 찾아봐야 먹고 사는 분위기네요. 으흐흐. 게다가 인트라넷은 Firefox로는 로그인도 안 돼서 FreeBSD에서는 도대체 볼 수가 없어서, 애로사항이 여간 아닙니다. 으흐~

그래서, 요새 절정의 인기를 구가하고 있는 mechanize로 게시판 긁어오는 스크립트를 만들어서 전에 식당 메뉴 만들듯 RSS로 만들어 보기로 마음 먹었습니다. 요새는 웬만하면 정보가 사람을 찾아와야지 사람이 정보를 찾으러 다니는 시대는 지났응께~

우선, mechanize는 아시다시피 쿠키와 참조URL 처리, 폼 처리를 자동으로 해 주기 때문에, 간단한 홈페이지를 따라가는 데는 더없이 편합니다. 그래서 웬만한 웹 스크래핑에는 항상 따르는 괴로운 순간 (스트레스가 슬슬 머리 위로 올라오면서, 계속 발생하는 예외상황과 이상한 HTML에 내가 이 일을 해서 뭐가 좋다고.. 하는 번뇌 등등..)이 거의 없이 한 페이지 보고 토닥토닥 해서 한 페이지 지나가고 리듬감을 잃지 않고 정보 수집이 끝났습니다. 역시 개발에는 리듬을 깨는 요소가 최대의 적입니다.

그리고, RSS는 지난번에는 손으로 짜서 print했더니 아침놀군이 HanRSS에서 이상하게 나온다고 하여서, 이번엔 제대로 된 RSS제너레이터를 사용했습니다. 훨씬 쉽고 좋네요~

그리하여, 만들어진 것이 이렇게(svn) 되었습니다. 🙂 이제 윈도우 들어가서 ActiveX와 씨름하지 않고도 학교 공지사항을 보고 장학금 신청을 할 수 있게 되었군요. -ㅇ-; (그러나 학점 미달로 인해 장학금 신청 자격이;;;)

혹시 회사나 학교 인트라넷에 불만이 있으시면 직접 한번 RSS로 만들어 보세요~

필요하신 분들을 위한 링크 (1시간 간격 업데이트):
전체
학생
교수
직원
세미나/행사
컴퓨터/네트워크
연구프로젝트
외국인

9 thoughts on “mechanize로 인트라넷 공지사항 RSS로 만들기”

  1. 퍼키님도 mechanize를 쓰시는 군요.
    퍼키님 때문에 Python에 관심을 가지고 재미난 것을 연습삼아 만드는 초보 학부생입니다. 이번 학기 초에 복학을 할때, mechanize로 자동으로 수강 신청해주는 프로그램을 짰었더라죠.. 그때 참 삽질을 많이 했던.. ^^

  2. 와와와와와~~~

    제가 딱 원하던 거였습니다! ㅠㅠ 포탈에 꽤 오래 전부터 RSS만이라도 제발 지원해달라고 건의해왔는데 뭐 예상하셨다시피 감감무소식…

    올해 말인가 내년부터는 새로운 학사시스템으로 바뀐다고 하고 나름 웹표준에 신경써서 만들고 있는 것 같기는 한데 RSS와 같이 사용자 편의를 위한 부분들은 얼마나 신경써줄 지 미지수입니다.

  3. reload(sys)와 sys.setdefaultencoding()을 썼더니 PyRSS2Gen에서 에러가 안 나네요. 도대체 아무 문서도 안 보여서 이걸 어쩌란 말인가 답답했는데 해결이 되어 시원합니다. 고맙습니다.

    근데 왜 에러가 났었고 왜 에러가 안 나게 된 건지는 짐작만 갈 뿐 제대로 설명하는 데가 없네요.

Comments are closed.