先附上我在Github上存放的代码仓库: The Python Challenge

这道题目开始让人很迷茫了(至少我是这样),先点开网页源码,没发现什么有价值等东西,然后又看看图片,发现右上角有个箭头,指着几个数字3,于是照着填进去了,发现没有链接,于是又跑去看源码,终于在开头发现了这个:

1
<!-- <-- zip -->

于是将’.html’替换成’.zip’,居然下载下来了一个压缩包,点开之后会发现有一个readme.txt,再继续点开,内容如下:

1
2
3
4
welcome to my zipped list.

hint1: start from 90052
hint2: answer is inside the zip

很明显,和前几题一样,就是按照90052这个数字找下去了,不过这次找的不是网页,而是文件。这里我们用zipfile这个模块来完成我们的需求

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#! /usr/bin/env python3
# -*- coding: utf-8 -*-
__author__ = 'Yuuki_Dach'

import zipfile
import re

zipFileName= 'channel.zip'
zipBag = zipfile.ZipFile(zipFileName)
num = '90052'
while True:
zipContent = zipBag.read(num+".txt").decode("utf-8")
print(zipContent)
content = re.search("(\d+)", zipContent)
if content == None:
break
num = content.group()

运行代码,会发现有以下信息:

1
Collect the comments.

恰好室友前几天提到zip压缩包的一些相关事项,再配合上一题,于是我将代码稍作更改,把文件里等注释等内容全部读出来

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#! /usr/bin/env python3
# -*- coding: utf-8 -*-
__author__ = 'Yuuki_Dach'

import zipfile
import re

zipFileName= 'channel.zip'
zipBag = zipfile.ZipFile(zipFileName)
num = '90052'
comment = ''
while True:
zipContent = zipBag.read(num+'.txt').decode('utf-8')
print(zipContent)
comment += zipBag.getinfo(num+'.txt').comment.decode('utf-8')
content = re.search("(\d+)", zipContent)
if content == None:
break
num = content.group()
print(comment)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
****************************************************************
****************************************************************
** **
** OO OO XX YYYY GG GG EEEEEE NN NN **
** OO OO XXXXXX YYYYYY GG GG EEEEEE NN NN **
** OO OO XXX XXX YYY YY GG GG EE NN NN **
** OOOOOOOO XX XX YY GGG EEEEE NNNN **
** OOOOOOOO XX XX YY GGG EEEEE NN **
** OO OO XXX XXX YYY YY GG GG EE NN **
** OO OO XXXXXX YYYYYY GG GG EEEEEE NN **
** OO OO XX YYYY GG GG EEEEEE NN **
** **
****************************************************************
**************************************************************

再将hockey输入,居然还有一个猜谜!

1
it's in the air. look at the letters.

这里不难想到’oxygen’,输入即可