2009. 2. 5. 20:57
728x90
전자신문 오늘자 PDF 파일 다운로드 프로그램이다.

http://aslongas.pe.kr/tt/entry/경제신문-pdf-자동-다운로드-프로그램-v01

여기 소스 코드를 약간 고쳤다. 처음 Python 프로그램을 만드는 거라 이것참 함수나 모듈을 모르니 난감

개발환경은 더 난감.. 문제는 전자신문 PDF를 압축한 파일이 표준이 아닌듯하다. zipfile이라는 모듈로 풀려고 했더니 ZIP 파일이 아니란다. 빵집으로도 안풀린다. 알집으로 해봤더니 된다. -_- 것참..

#!/usr/bin/env python   
#-*- coding: utf-8 -*-   
# LICENSE http://aslongas.pe.kr   
# This program is free to use but you should remain these comments without modification.   
# Developement Environment   
# 1. Windows XP   
# 2. Python 2.5.1   
# 3. extra module : mechanize   
  
from mechanize import Browser   
import re  
import os  

class ETNEWS:   
	_login_url = "https://member.etnews.co.kr/member/login.html"   
	_pdf_url = "http://pdf.etnews.co.kr/download_zip.html?p_date="   
      
	def __init__(self):   
		self.login("아이디", "패스워드")   

	def login(self, username, password):   
		self.br = Browser()   
		self.br.set_handle_robots(False)   
		self.br.open(self._login_url)   
		self.br.select_form(name='loginFrm')   
		self.br['id'] = username   
		self.br['pw'] = password   
		self.br.submit()   

	def get_pdf_data(self, date):   
		print 'Downloading ... : ' + self._pdf_url + date
		file = self.br.open(self._pdf_url + date, "today_news" + date + ".zip").read()
		
		f = open("today_news" + date + ".zip", "wb")
		f.write(file)
		f.close

		print 'Download Complete.'

	def get_content(self): 
		import time
		date = time.strftime("%Y%m%d", time.gmtime())
		self.get_pdf_data(date)   

if __name__ == '__main__':
	import sys
	se = ETNEWS()
	se.get_content()
728x90
복사했습니다!