http://www.pythonchallenge.com/pc/def/channel.html
打开网址,只有图片与标题,均没看出来有什么有用的信息,于是看源代码:
<html> <!-- <-- zip -->
<head>
<title>now there are pairs</title>
<link rel="stylesheet" type="text/css" href="../style.css">
</head>
<body>
<center>
<img src="channel.jpg">
<br/>
呵呵。后面一段明确说了没用的话,我就没放上来,这里有个<!-- <-- zip -->比较奇怪,玩了这么几关,发现基本都是出来反常的地方,zip是个文件扩展名,于是,改个地址试试 www.pythonchallenge.com/pc/def/channel.zip
发现真的下载下来一个zip文件,打开后,里面有一堆文件,其中有个readme.txt, 打开:
welcome to my zipped list.
hint1: start from 90052
hint2: answer is inside the zip
毫无疑问就是这个文章了,首先打开90052.txt,提示下一个是94191,继续下一个是85503,大概就清楚是咋回事了,跟上一次爬nothing类似,但是这次是本地zip文件操作,也可以解压出来操作txt文件,考虑到上次就是半途设坑,这次得小心。
==================现在的问题就是怎么操作zip文件了,先学一会===========================
import zipfile as zf
name = '90052'
file = zf.ZipFile('channel.zip')
try:
for i in range(len(file.namelist())):
namestr = name + '.txt'
content = file.read(namestr).decode('utf-8')
print(content)
name = content.split()[-1]
except:
print('Stop!!!')
跑到最后报错:
Next nothing is 67824
Next nothing is 46145
Collect the comments.
告诉我们看注释,接下来再找找注释。
import zipfile as zf
file = zf.ZipFile('channel.zip')
print(file.comment.decode('utf-8'))
额,注释是空的?what ????难道前面被坑了???
====================================================
卡死了,怎么都弄不出来东西,先放一放
====================================================
网上查资料,发现zip里居然还可以每个文件自己带注释,涨知识了:
import zipfile as zf
name = '90052'
file = zf.ZipFile('channel.zip')
comment = ''
try:
for i in range(len(file.namelist())):
filename = name + '.txt'
print(file.getinfo(filename).comment.decode('utf-8'))
comment += file.getinfo(filename).comment.decode('utf-8')
content = file.read(filename).decode('utf-8')
name = content.split()[-1]
print(comment, end='')
except BaseException as b:
print(b)
输出很多行*#GH等符号,应该是类似上一关拼图了,找找技巧在哪里,功夫不负有心人
import zipfile as zf
name = '90052'
file = zf.ZipFile('channel.zip')
comment = ''
try:
for i in range(len(file.namelist())):
filename = name + '.txt'
comment += file.getinfo(filename).comment.decode('utf-8')
content = file.read(filename).decode('utf-8')
name = content.split()[-1]
except BaseException as b:
print(comment, end='')
****************************************************************
****************************************************************
** **
** 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代入,居然还有“it's in the air. look at the letters.” 懵逼,源代码是一样的内容,看来得在这句话上公关了。。真不搞了,累死。
=========第一次网上搜了攻略,原来已经出来了,答案是oxygen=======
进入下一关