- 博客(30)
- 资源 (1)
- 收藏
- 关注
原创 PythonChallenge 挑战之路 Level-33(终结)
首先下载一张图片,用beer2.jpg时,提示用.png,然后就能下载一张图片了。网页源码里面有一段提示: <!-- If you are blinded by the light, remove its power, with its might. Then from the ashes, fair and square, another truth at you will glare.
2013-08-16 23:37:21 1131
原创 PythonChallenge 挑战之路 Level-32
这一关给出的是一个类似数独游戏,叫做Nonogram,大概的玩法就是按照每一行和每一列的要求确定每个格子是否点亮。http://zh.wikipedia.org/wiki/Nonogram给出了详细的介绍以及人工求解的思路。 一开始的提示是下载一个warmup.txt,也就是一组输入,然后求解出结果。这组数据是9*9的,可以先人工求解,算出的结果是一个向上的箭头,尝试用up替换,得到第二组正式的
2013-08-16 20:34:48 1055
原创 PythonChallenge 挑战之路 Level-31
一开始的网页源码说和Python没有关系,点击图片却需要验证口令,口令是岛屿:国家,那么用Google图片搜索搜索一下这幅图,发现是泰国的一个祖父祖母石,在Koh Samui, Thailand所以口令就是:kohsamui:thailand 调到下一个页面后是一副很炫的图片,提示给出了一些数据,上网搜了一下才知道这是一幅分形图,利用Mandelbrot算法构造,利用给出的参数画一幅新图后,和原
2013-08-15 11:59:54 912
原创 PythonChallenge 挑战之路 Level-30
首先下载一个.csv的文件,这是一个包含7367个浮点数的文件,然后就需要利用这些数构成一张图片,而7367=53*139,所以图片为53*139的,利用图片上的信息就可以再一步解码获得谜底了。代码如下: import Image,re f = open(r'F:\Python challenge\yankeedoodle.csv','r').read() data = re.findall(
2013-08-14 20:50:42 809
原创 PythonChallenge 挑战之路 Level-29
这一关的标题是silence,然后就没啥提示了,但是查看源码的时候可以发现有很多多余的空白行,信息应该是隐藏在这里面,读取页面后发现那些空白行中的空格个数都不一样,而这些数目刚好可以形成以BZh开头的一段文本,再用bz2解码就可以看到结果了。代码: import urllib,bz2 f = urllib.urlopen('http://repeat:switch@www.pythonchall
2013-08-14 19:51:17 896
原创 PythonChallenge 挑战之路 Level-28
这一关还是图像处理。仔细看图片可以发现一些色条明暗相间。提示文字说RING-RING-RING,say it out loud,那么将图片的三个通道分离,发现条纹来自于GREEN通道。 从网页的标题many pairs ring-ring来看,应该是将G通道的像素信息两两成对。尝试用这些坐标画图: 并不是什么文字、图案,但是那两条平行线很明显,说明这些坐标点存在规律。将坐标相减,那两条
2013-08-14 17:54:54 941
原创 PythonChallenge 挑战之路 Level-27
这一关没整出来,看了攻略才知道要利用调色板神马的…… 首先下载zigzag.gif,这时候每个像素的上的信息是调色板的索引号。然后就需要用实际的颜色替换索引号得到等价的图片信息: import Image,string,bz2,keyword f = Image.open('zigzag.gif') fd = f.tostring() fp = f.palette.getdata()[1][:
2013-08-14 16:57:40 961
原创 PythonChallenge 挑战之路 Level-26
这一关需要前几关的几个未用的线索。首先这一关的提示有: be a man - apologize! I'm missing the boat 其中第二个说你已经有了他的邮件,而且需要你去道歉,那么到目前为止联系最紧的就是19关(反转音频的每一帧)里面出现的邮箱,其次在23关中的第一条暗示中说你欠某个人一个道歉,去告诉他‘sorry',所以第一步就是给leopold.moz@pythoncha
2013-08-14 13:14:51 950
原创 PythonChallenge 挑战之路 Level-25
这一关的图片是一个拼图游戏(共5*5=25块),暗示了不少信息。网页源码的提示: 这也暗示了需要将声音信息转化为图片信息。图片的文件名为lake1.jpg,尝试了lake2.jpg,发现没有,那么尝试lake1.wav,果然可以获得一段音频信息。一共25段,对应了图片的25块的暗示,首先下载下来: import urllib for count in range(1,26): url
2013-08-13 23:27:59 871
原创 PythonChallenge 挑战之路 Level-24
这一关的图片是一张迷宫地图,只不过白色部分是迷宫的墙,深色部分是路。根据标题from top to bottom的提示,入口就是图片的右上角,出口就是图片的左下角。一开始以为路线会构成谜底, 结果: 显然这还不是谜底。在仔细观察迷宫的路径,可以发现每个一个像素点,路径上的颜色就会变化,应该包含了一些信息。将这些像素点的R通道数据用二进制写到文件,打开可以发现前两位是 PK ,那么这些信息
2013-08-13 19:30:45 1145
原创 PythonChallenge 挑战之路 Level-23
这一关的网页源码提示挺多的: <!-- TODO: do you owe someone an apology? now it is a good time to tell him that you are sorry. Please show good manners although it has nothing to do with this level. --> <!-- 'va
2013-08-13 15:29:03 872
原创 PythonChallenge 挑战之路 Level-22
这一关主要是处理.gif图片,之前也有过,不过那个图片只有一帧,这次下载下来的有很多帧,需要一帧一帧分解。 可以看出每一帧的图片都是一个白点围绕中心(100,100)在变化,联想这一关的图片(一个游戏操纵杆),可以认为是白点相对中心的变化就是对一个点的操纵。最后的结果显示通过操纵点的运动一共画出了5个字母的轮廓,所以当白点回归到中心的时候,就是画下一个字母的信号了。 代码如下: import
2013-08-13 12:04:49 986
原创 PythonChallenge 挑战之路 Level-21
这一关没有网页,谜面就是上一关的压缩包解压后的一个文件:package.pack,从文件名可以想到需要解压数据。给出的提示有2条:1.我们小时候经常玩的游戏;2.不知道怎么办的时候,我通常往回看。 所以题目的意思应该就是需要对这个文件中的数据不断解压,或是倒序。但是到底采用什么样的解压方法就不知道了,网上搜了一下,http://past.makto.me/post/2011-11-27/1930
2013-08-12 15:00:52 877
原创 PythonChallenge 挑战之路 Level-20
这一关没有头绪,参考了别人的线索才整出来了…… import urllib,re url = 'http://butter:fly@www.pythonchallenge.com/pc/hex/unreal.jpg' #start = 30203 #start = 2123456743 start = 1152983631 end = 2123456789 find = re.compile(r
2013-08-12 14:12:36 1780
原创 PythonChallenge 挑战之路 Level-19
这一关主要是音频的处理了。图片的提示就是反转(大陆和海平面颜色反转了),网页源码中给出了一封邮件,需要从附件生成一段音频文件。代码如下: import base64 text = open('19att.txt','r').read() indian = open('indian.wav','wb') wav = base64.b64decode(text) indian.write(wav)
2013-08-11 17:35:41 1506
原创 PythonChallenge 挑战之路 Level-18
这一关的提示就是: 而这两幅图显然只有亮度有区别,一开始联想到是鸭子,所以尝试用darkness去替换,不对,尝试用brightness,对了 然后按照提示,下载deltas.gz 看来下一步就是处理这个压缩文件了。稍微研究了一下这个文件,发现是类似一开始图片的两片数据。那么应该就是把数据进行分割。 import gzip,difflib ff = gzip.open('deltas.
2013-08-10 12:22:25 1195
原创 PythonChallenge 挑战之路 Level-17
这一关很是麻烦…… 首先通过cookies的提示,需要查看cookies信息,然后知道需要回到第四关,然后用busynothing 替代 nothing,重复第四关的遍历,不过这次需要收集的是每一个页面的cookies信息,然后利用bz2处理这些信息,然后再回到第13关打电话给mozart的老爹…用获得的信息修改新页面的cookies,最后得到谜底,真是太复杂了…… import re,bz2
2013-08-09 17:13:58 1058
原创 PythonChallenge 挑战之路 Level-16
这一关唯一的提示就是网页标题了:let me get this straight 可以看出图片中有很多的小短线(粉红色的),但是分布散乱,那么题目的意思应该就是把他们对齐了。这个图片的数据用的是索引格式,上网查了一下才知道粉红色对应的是195 代码如下: import Image im = Image.open(r'F:\Python challenge\mozart.gif') newim
2013-08-07 11:35:30 769
原创 PythonChallenge 挑战之路 Level-15
这一关的图片是一个日历,年份只知道是1**6年,1月1号星期四,右下角的小日历可以看出2月有29天,所以是个闰年。网页源码的提示有: 那么结合起来就知道主要是要找出年份,日期应该和1-27(第二天)有关。代码如下: import datetime, calendar year = 1006 for i in range(100): year+=10 if datetime
2013-08-07 11:00:11 716
原创 PythonChallenge 挑战之路 Level-14
这一关的图片说明是个很奇怪的图案,有点像条形码……点开网页源码,把这个图案下下来,发现居然是一个长条形(10000*1),源码中的提示为: 在结合面包的图片,估计是想用(10000*1)的图片合成(100*100)的图片,规律就像面包的纹理一样,一圈一圈的。最后得到的图片不正,那么用与面包相反的纹理(下、右、上、左)就好了,代码如下: import Image im = Image.ope
2013-08-07 10:31:29 1264
原创 PythonChallenge 挑战之路 Level-13
首先在上一关中,网址修改为evil4.jpg的时候(用IE打开),出现一句提示:Bert is evil! go back! 这是这一题的关键线索。 进入这一关后,图片下显示phone that evil,那么用bert替换网址,显示了新的提示: Yes! Bert is evil! 然后就没有了,可是到底怎么才能给Bert打电话呢?尝试点击原图片中的数字键,单击5能进入一个新的页面,源码为
2013-08-07 09:19:53 589
原创 PythonChallenge 挑战之路 Level-12
这一关一开始都没有找到谜面是什么,上网查了一下才知道原来是把evil1.jpg换成evil2.jpg,然后出现一张图片告诉你后缀用.gfx,再修改一次就下载了一个evil2.gfx的文件。 联想到那张分牌的图片,那么将该文件像分扑克牌一样一分为五,最后就得到了结果。代码如下: data = open('evil2.gfx','rb').read() for i in range(5):
2013-08-06 21:23:56 625
原创 PythonChallenge 挑战之路 Level-11
这一关的图片看起来总觉得怪怪的,第一感觉像是两张图片混在了一起,查看网页源码没有任何提示,估计只能从标题odd even下手了。 把图片下载下来,发现很明显的像素存在问题,在奇偶不同位置上的像素似乎是来源于不同的图片。代码如下: import Image, ImageDraw im = Image.open('cave.jpg') new = Image.new('RGB',(320,240)
2013-08-06 18:23:14 672
原创 PythonChallenge 挑战之路 Level-10
图面文字为len(a[30])=? 点击图片中公牛的部分,显示了一段文本:a = [1, 11, 21, 1211, 111221, 所以谜底应该就是找出序列的规律了。 分析下规律:1,11(前一个数是1个1),21(前一个数是2个1),1211(前一个数是1个2,1个1),111221(前一个数是1个1,1个2,2个1),所以这个规律就是这种对前个数组成的描述规律啦。那么程序
2013-08-06 16:39:31 569
原创 PythonChallenge 挑战之路 Level-9
这一关的图片中有很多的小黑块,沿着图中景物的轮廓分布,应该就是谜面了。网页的标题为connect the dots,查看网页源码,提示有两个,第一个是解释如何查看上一关的解法(和通常的略有不同),第二个为:first+second=? ,紧接着就是first和second的两坨数据: <!-- first+second=? first: 146,399,163,403,170,393,169
2013-08-06 13:02:25 762
原创 PythonChallenge 挑战之路 Level-8
点击图面,发现需要用户名和密码来登录,查看页面源码,在最后有这样的提示: <!-- un: 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084' pw: 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x
2013-08-06 11:12:24 654
原创 PythonChallenge 挑战之路 Level-7
这一关的图片的中间明显有问题,而除此之外之后没有任何提示,查看网页源码也没有任何下载链接。看来应该是处理这副图片的中间那一条线的数据了。 查了一下Python关于图片处理的模块,找到一个PIL(Python Image Library),需要自己手动下载、安装一下。 弄好后,读取中间的像素点的信息,发现像素的R G B都相等(上网查了一下,只要R=G=B,那么就是灰色的,正如图片上显示的那样)
2013-08-04 20:01:26 1455
原创 PythonChallenge 挑战之路 Level-6
这一关的提示基本没有,网页源码只有一句一开始被忽视的提示: 用zip替换channel后,只有一句话:yes. find the zip. 可是去哪去找zip呢?没办法,上网搜了一下才知道,原来是用zip替换html(http://www.pythonchallenge.com/pc/def/channel.zip),坑爹啊。这样可以下载一个.zip文件,里面包含了很多的XXXX.txt文件,
2013-08-04 15:33:41 761
原创 PythonChallenge 挑战之路 Level-5
在这一关图片的下面,只有一句话: pronounce it 感觉莫名其妙的,点图片也没反应,查看源码,发现可以下载一个叫banner.p的文件,打开一看,恩,一坨数据。网页源码最下面的提示: 好吧,还是感觉莫名奇妙的,上网搜了一下才知道要用pickle模块来还原数据。 还原后的数据是很多的元组,第一个是' '或者'#',紧跟着是一个数字,大概就是前面这个重复多少个吧。看别人有用图像来处理的
2013-08-04 13:58:12 517
原创 PythonChallenge 挑战之路 Level-4
歇了好几天,继续挑战! 第四关什么提示都没有,查看源码,有这么一句话: <!-- urllib may help. DON'T TRY ALL NOTHINGS, since it will never end. 400 times is more than enough. --> 再返回,点击图片,转到一个新的页面:http://www.pythonchallenge.com/pc/de
2013-08-04 13:24:02 640
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人