분류 | 게시판 |
베스트 |
|
유머 |
|
이야기 |
|
이슈 |
|
생활 |
|
취미 |
|
학술 |
|
방송연예 |
|
방송프로그램 |
|
디지털 |
|
스포츠 |
|
야구팀 |
|
게임1 |
|
게임2 |
|
기타 |
|
운영 |
|
임시게시판 |
|
주의 사항!
사실 고민을 많이 했습니다. 저작권이 걸린 매체를 가지고 물의를 일으키지는 않을까 해서요.
분명히 밝힙니다. 본 문서는 python을 파이썬을 학습에 조금이나마 도움을 주기 위한 목적으로만 작성되었습니다. 수집한 각 웹툰은 저작권이 허용하는 범위 안에서만 이용하십시오. 웹툰의 감상은 웹사이트를 통해 하시기 바랍니다. 이 문서를 보시는 분들의 상식을 믿겠습니다.
1. 웹페이지 소스 얻어오기
주소 체계에 대해 이해했으면 이제 실습을 하도록 하지요. 이 장에서 여러분들은 웹브라우저가 아닌 직접 작성한 프로그램을 통해 웹 페이지에 접속해보게 됩니다. 프로그램에 웹페이지 주소를 넣으면, 웹페이지의 HTML 코드를 얻는 거지요. 파이썬으로는 놀라울 정도로 간결하게 이 일을 할 수 있습니다.
1.1. 인터프리터 열어서 맛보기
파이썬 인터프리터를 열어보세요. 그리고 다음과 같이 입력해보세요.
import urllib2
print urllib2.urlopen('http://www.google.com/').read()
구글의 소스 코드가 출력되어 나올 것입니다. 전 처음에 파이썬으로 단 2줄만에 웹페이지를 얻어올 수 있다는 사실에 충격 먹었었는데, 여러분들은 어떠시나요? 정말 간단하지요? 이제 http://www.google.com/ 대신에 웹툰 페이지를 입력해서 HTML 소스 코드가 나오는지 확인해보세요.
1.2. 스크립트 작성하기
텍스트 편집기를 하나 열어서, 좀 더 정리된 상태의 스크립트로 편집해 보겠습니다. 텍스트 편집기는 아무 거나 써도 상관없지만, 그래도 쓰기 편리한 것이 좋습니다. 저는 Notepad++를 추천합니다. 기능도 훌륭하고, 무료입니다.
gethtml.py
# -*- coding: cp949 -*-
# 코드페이지를 지정합니다. 파이썬 스크립트 시작에 반드시 삽입해주세요.
# 한글 윈도우면 'cp949', 리눅스면 보통 'utf-8'을 씁니다.
import urllib2, sys
# filename으로 contents를 기록합니다.
def savefile(contents, filename):
f = open(filename, 'w')
f.write(contents)
f.close()
# url의 문서(HTML)를 읽어 리턴합니다.
def gethtml(url):
response = urllib2.urlopen(url)
return response.read()
# 메인함수
def main(argv):
if len(argv) != 3:
print 'Usage: gethtml.py <url> <savefile>'
return 1
url = argv[1]
savefilename = argv[2]
# url에 접근해서 파일 내용(HTML)을 얻어옴
html = gethtml(url)
# 출력해서 확인
# print html
# HTML을 파일로 저장
savefile(html, savefilename)
# 성공적으로 종료
return 0
# 파이썬은 스크립트 언어이므로 C/C++와 같이 main함수를 먼저 실행하지 않습니다.
# 본 파일을 실행했을 때 main() 함수가 실행되기 위한 처리를 직접 해야 합니다.
if __name__ == '__main__':
sys.exit(main(sys.argv))
조금 내용을 덧붙였습니다. URL과 문서를 저장할 파일 이름을 인자로 넘기면, URL의 문서를 읽어들여 파일 이름으로 저장하는 간단한 프로그램입니다. 명령 프롬프트에서 아래와 같이 실행하면 됩니다.
python gethtml.py http://www.google.com google.html
죄송합니다. 댓글 작성은 회원만 가능합니다.