Python Challenge - 6

728x90
반응형

6번문제 - 사진밖에 없다. 아래 버튼을 눌러보니 돈 내라고 한다

페이지 소스를 봐도 기부해달라고 나온다...

(5단계까지 무료버전이고 6단계부터 돈내야 하는 건줄...)

페이지 소스 맨위에 zip이 써져 있다. 주소창에 channel.zip을 치니 zip파일이 하나 다운이 되었다.

zip파일을 열어보니 txt 파일이 몇백개가 있고 readme를 열어보니 90052 부터 시작하고 zip안에 답이 있다고 한다.
90052.txt를 열어보니 앞에서처럼 'next nothing is ~~' 글씨가 써져있다.
앞에 푼 문제에서 처럼 nothing을 따라가면 답이 나오는 것 같다.

근데 일일이 txt파일을 다 열 수는 없을 것 같아서 검색을 하던 중 zipfile모듈이 있다는 것을 발견했다.

zipfile은 모듈이라 기능이 엄청 많고 복잡하니 궁금하신 분들은 각자 찾아보시길..

간단하게 설명하면 channel.zip이라는 zip파일을 열어서 nothing.txt 안의 글 중 findall함수로 
숫자만 거른뒤 nothing에 그 숫자를 넣어서 다음 nothing.txt를 계속 열고 출력하는 코드이다.

끝에 46145가 나오길래 46145.txt를 열었더니

(2문제를 푸는 느낌인데...)

Collect the comments가 무슨 뜻일까 하고 channel.zip을 다시 열어보니

오른쪽에 설명이라고 되어있는 탭에 별과 영어들이 써있는 것을 발견했다. 설명 = comment인듯
저 comment들을 어떻게 뽑아낼까 하다가 getinfo()함수를 알아냈다.

** 그냥 getinfo로 얻은 comment들은 type이 bytes형이서 출력하면 앞에b가 붙어서 보기 불편하다. 따라서 15번째줄처럼 "utf-8"로 decode 해 주어야한다.           (뭐... 애초에 res는 str형이고 cmt는 bytes형이어서 concatenate가 안된다고 에러가 뜨긴한다.)

res에 getinfo()함수로 얻은 comment값들을 더하고 출력하니 해결!

 

728x90
반응형

'wargame > PythonChallenge' 카테고리의 다른 글

Python Challenge - 5  (0) 2019.10.30
Python Challenge - 4  (0) 2019.10.28
Python Challenge - 3  (0) 2019.10.27
Python Challenge - 2  (0) 2019.10.27
Python Challenge - 1  (0) 2019.10.27
TAGS.

Comments