python challenge 2

Posted 2012. 5. 25. 23:54

2번째 문제다.

 

 

 

 

recognize the characters. maybe they are in the book,
but MAYBE they are in the page source.

 

영어를 해석해보면 문자를 찾으라. 그리고 아마도 그 문자들은 책에 있을 것이다. 하지만 그들은 페이지 소스에 있을 것이다....

 

아 뭔 개소리;; 결국 말장난. 걍 페이지 소스보기에 있다 하지;;

 

 

 

 

쨋든 페이지 소스를 보면 특수문자 작렬이다...정말 보기 싫어지는 문자들이다..

 

먼저 저 문장들을 가져온다. 직접 긁어도 되지만 파이썬으로 한번 가져와보자.

 

import urllib
web = urllib.urlopen("http://www.pythonchallenge.com/pc/def/ocr.html")

 

이 코드를 보면 import urllib 를 해준다. urllib 는 웹에 관해 쓸모있는 몇가지 기능들을 제공해준다.

 

한가지 예시만 보면 base64 인코딩과 디코딩 기능을 지원해주는 것도 있다.

 

base = urllib.base64

print base.b64decode(base.b64encode("aaaaaaaaa"))
aaaaaaaaa

 


urllib.urlopen 은 웹페이지를 가져올수 있다.

web.read() 를 해보자

 

 

 

 

웹 페이지를 긁어왔다.

 

이것 말고도 나머지 기능들이 있으나 직접 알아보자;; 다음에 시간나면 알아 볼 예정이다,,

 

쨋든 뒤에 주석부분을 가져와야 한다. index 함수를 쓸건데 코드는 맨 뒤쪽에 위치해 있으므로 문자열의 오른쪽 부터 찾이 위하여 rindex 를 쓸 것이다. 

 

import urllib
import string
web = urllib.urlopen('http://www.pythonchallenge.com/pc/def/ocr.html')
S = web.read()

data = S[S.rindex('<!--'):S.rindex('-->')]
print data

 

이렇게 해보면 <!-- 부터 --> 까지 걸러준다.

 

그리고 for 문으로 알파벳을 찾는다.

 

for el in data:
    if el.isalpha():

 L+=el

 

print L

 

난 이렇게 무식하게? 한거같은데 이 글을 보는 사람은 한번 다른 방법도 연구해보고 댓글좀,,ㅋ

 

 

 

 

 

 

'python > python challenge' 카테고리의 다른 글

python challenge 0  (0) 2012.05.22
python challenge 1  (0) 2012.05.22
« PREV : 1 : ··· : 31 : 32 : 33 : 34 : 35 : 36 : 37 : ··· : 43 : NEXT »