2007년 9월 15일 토요일

[프로젝트]etnews whole downloader 1.0

개요
바로 전 프로젝트인 etnews freepdf downloader 1.0(http://frontjang.blogspot.com/2007/09/pdf-10.html)을 보완하기 위한 프로젝트이다. 이전 게시물인 C#으로 PDF파일 제어하기(http://frontjang.blogspot.com/2007/08/c-pdf.html)를 바탕으로 etnews freepdf downloader에서 pdf를 받고 그 안에서 텍스트를 추출하는 기능을 추가하려 했었는데. 이상하게 한글이 뽑아지지 않았다. 아무래도 cmap문제 인것 같던데, 이문제를 해결하려면 자료를 더 조사해야했다. 귀찮아서 관둘까 하다가, 생각난것이, 전자신문 PDF 서비스 페이지 메인화면.(http://pdf.etnews.co.kr/pdf_today.html). 이곳에는 특정 날짜의페이지와 기사제목이 나오고, 기사원문을 볼 수 있는 사이트가 링크되어 있는것.





기능
전자신문 PDF 서비스 페이지 메인화면.(http://pdf.etnews.co.kr/pdf_today.html)에서 기사리스트를 추출하고, 원문과 페이지 섬네일을 저장하는것. 또한 기사는 mysql db로 저장되기도 한다.






기타
별것 없었다. 정규표현식(Regex)과 날짜(DateTime)를 적절히 사용한것. 단지 문제가 된건 mysql 쿼리를 한번에 하나씩 하면 자원소모가 있으므로 한파일에 몰아서 파일에 저장하고, 그것을 한번에 덤핑하는 방식을 썼는데, 파일 형식을 utf-8으로 하고 mysql -uroot etnews < query.txt 하는 방식을 썼는데 확인해보니 글자가 다 깨져 있었다. 인코딩 문젠가 해서 다 비우고 다시 설정하여 해봤는데도 마찬가지였다. 생각해보니 현재 콘솔(?)에서는 utf-8을 쓰는게 아니기때문에 그랬던거 같아서 default로 했더니 되었다.
또한 전자신문 서버의 부하를 줄이기 위해(-_-?) netlimiter로 다운로드 속도를 50k로 제한하여 다운받았다.(그래도 500mb나 받았다. db로 저장하면 120mb밖에 안되던데 그 차이가 무엇인지 파악해야겠다.)

이보다 더 중요한건, 블로그스팟에서 '<'기호를 그대로 썼다가(lt;로 말고) 태그로 인식하는바람에 그 뒤에 있던 글을 다 날려버렸다는것.!!!









스크린샷

2005년 5월 1일부터 2007년 9월 14일까지의 기사중에서 'vmware' 라는 단어를 검색한 결과












댓글 없음: