#!/usr/bin/env bash # Naver2RSS Version=1.4 # 네이버 뉴스 기사 목록 페이지를 긁어와서 RSS를 내놓는 스크립트 # 누가: 신재호 # 언제: 2004-01-03 # $Id: naver2rss.sh,v 1.1 2004/01/03 04:47:19 netj Exp netj $ # # 자세한 내용은 http://sparcs.kaist.ac.kr/~netj/naver2rss/를 참고하세요. # 주의!! 직접 돌리신다면 tidy.cgi에 해당하는 URL을 설정해주세요: TidyURL="http://sparcs.kaist.ac.kr/~netj/naver2rss/tidy.cgi" newsurl() { echo "http://news.naver.com/news/list.php?mode=LSD§ion_id=$1&view=1" } cartoonurl() { echo "http://news.naver.com/cartoon/list.php?section_id=$1" } get() { local xsl=naver2rss.$1.xsl section=$2 title=$3 url=$4 echo $section wget --quiet --user-agent "Naver2RSS/$Version" --output-document - "$url" \ | iconv -f cp949 -t utf-8 \ | sed -ne"//,//{ s/&/\&/g p }" \ | tidy -clean -utf8 -asxml 2>/dev/null \ | sed -e"s/&\(amp\|lt\|gt\|apos\|quot\);/\&\1;/g" \ | tee $section.html \ | xsltproc 2>/dev/null \ --param title "'$title'" \ --param url "'$url'" \ --param TidyURL "'$TidyURL'" \ $xsl - \ | xmllint --format --encode utf-8 - \ >$section.rss } get news top "속보" `newsurl 001` get news politics "정치" `newsurl 100` get news business "경제" `newsurl 101` get news community "사회" `newsurl 102` get news life "생활/문화" `newsurl 103` get news world "세계" `newsurl 104` get news it "IT" `newsurl 105` get news sports "스포츠" `newsurl 107` get news entertainment "연예" `newsurl 106` get news column "칼럼" `cartoonurl 201` get news saseol "사설" `cartoonurl 200` get cartoon manpyeong "만평" `cartoonurl 307`