mazha 的个人资料A New Age照片日志列表更多 ![]() | 帮助 |
[PC_13] call him做 PC 以来最艰苦的一关~
学校里边玩 PC 的人绝大多数止步于 12 关,这下算是个突破了~ \o/~~~
描述一下:一个电话拨号盘的图片,中间 '5' 数字上有链接,点过去连到 /phonebook.php,页面显示出 XML 错误 faultCode: 103 faultString: XML error: no element found at line 1
电话图片下面一行字:'phone that evil',这是在页面上看到的,实际源文件里面写的是 phone that <remote /> evil
不明就里,不过 title 是 'call him',加上图片电话再加上这个 phonebook,基本想到是要找到那个 'evil' 或他的电话号码。
想起上关结尾时留下的小尾巴线索: Bert is the evil ! 试着把 bert 敲入 URL,果然出现 'Yes! Bert is evil!'
于是,解题的关键锁定在如何 call 到 bert,显然他的电话要从 phonebook.php 中得到……
尝试着在 phonebook.php 后边加上参数翻来覆去的试 phonebook.php?evil=bert, phonebook.php?remote=bert, phonebook.php?bert .... 出错信息始终没有变过 :(
而且我对 http 协议并不熟悉,实在没办法了,去下了个 ethereal,专门监控 http 包,察看包的内容,与此同时,用 python 的 httplib 模块写了些代码做连接测试
[code 1] 刚开始使用的是 HTTP GET 方法,得到的结果与开始时一样,后来改为 POST,还是说第一行没有找到 element,于是又加了 http body 作为 element,结果不同了!显示的错误信息变成了 faultCode: 1 faultString: Unknown method
虽然还是出错信息,但是至少不再是我看了不下一百遍的那条了。
unknown method? 难道页面一直想要的是一个 method? 突然我脑中想起了另一个模块,xmlrpclib,这个模块前两天为了实现编程连接 space 写 blog 刚好研究过的,是专门用来通过 xml 调用远程方法的,不妨一试
[code 2] 当结果输出 ['phone', 'system.listMethods', 'system.methodHelp', 'system.methodSignature', 'system.multicall'] 的时候,我这个激动啊,'phone' !看到这个方法我知道这关我就要过了!
接着查看 phone 方法的说明和参数列表
[code 3] 得到输出:
Returns the phone of a person
[['string', 'string']] 哇哈哈,最后
[code 4] 得到电话: 555-ITALY
输入 url,找不到页面,去掉 555- 显示: SMALL letters. -_-!
最后一次 italy, 耶!看到了朝思暮想的第 14 关!
2006/2/13 [PC_12] dealing evil又是颇有难度的一关,图片是一个人在发纸牌,像赌场的那种,纸牌分成了四五堆~
源文件里什么都没有,一时没了着落~
最后线索来源于图片的 url <img src="evil1.jpg">,既然取名 evil1.jpg,很自然的想到还会有 evil2.jpg,试一下果然有这个图片,上面歪歪扭扭的手写体写着 "not jpg , _.gfx" 看着像 dying message,巨寒~
后缀名改为 .gfx 后得到文件 evil2.gfx。
拿到文件后继续迷茫,上网四处艘 gfx 文件是什么格式,没有一个符合的~~
用 uedit 打开,看出些许端倪,这时想起网页上的图片,幡然醒悟,于是每隔 5 个字节存到一个文件中,最终根据获得的文件的 Magic Number 判断出文件类型,打开后信息一目了然~
[code] 代码有些冗繁,五张图片 0,4 为 jpg 格式;1,3 为 png 格式;2 为 gif 格式~
0 到 5 上面分别歪歪扭扭的写着 dis,pro,port,ional,ity 其中 ity 又被划掉了 -.-~
(第三张我得到的文件打开时报错说有损坏,只显示了一半,不过足够分辨出字母了,重试了几次还是一样,不知道问什么:(~ )
连起来: disproportional
PS: 还有一些细节,试过 evil2.jpg 后当然不会就此打住,接着试了 evil3.jpg,evil4.jpg,evil5.jpg ...
得到的图片都是说回去吧,后面没有啦之类的,而最后一个页面是一行文字: Bert is the evil....
[PC_11] odd even网格状的图片,无提示,
不过 title 已经足够了,按奇偶把像素分开么,
写代码还是花了些功夫,对 PIL 不熟悉:(
[code] 得到两张图片,一张没什么东西,另一张血红背景,右上角四个暗黄色的字母 —— evil
[PC_10] what are you looking at?一进去就看到上关画出来那头牛的真面目了,满帅的哈哈~~
然后一个问题: len(a[30])=? 源文件什么提示都没有~
点一下牛图片有个txt文件: a = [1, 11, 21, 1211, 111221, 是道数列题。
我现在当然知道是怎么做,可当时和 RhythmBox 刚开始做这题的时候为了找 a 的规律冥思苦想了好几天呢~
后来公务员考试期间拿这道题考 glitter 和 tomcat ,得知这个竟是 google 的一道面试题,~>.<~ 看来牟希望去 google 了么~~~
呵呵,还有,当时寝室都在准备考研,为了不把精力浪费在 PythonChallenge 上,寝室里一度发誓不写python的,不过最后到底抵挡不住 python challenge 的诱惑,于是我用 c 写了程序过了这关~
那好吧,现在把 python 的代码补上~~ :)
[code] 结果:5808 2006/2/12 [PC_09] connect the dots页面上一棵树的图片,书的轮廓上分布着一些黑点,源文件中提示:
first+second=?
first:
146,399,163,403,170,393,169,391,166,386,170,381,170,371,170,355,169,346,167,335,170,329,170,320,170, 310,171,301,173,290,178,289,182,287,188,286,190,286,192,291,194,296,195,305,194,307,191,312,190,316, …… second:
156,141,165,135,169,131,176,130,187,134,191,140,191,146,186,150,179,155,175,157,168,157,163,157,159, 157,158,164,159,175,159,181,157,191,154,197,153,205,153,210,152,212,147,215,146,218,143,220,132,220, …… 于是每两个连续的数为一组,作为一个点的横纵坐标,连起来之后就是两幅图像
两幅图像叠起来就知道是什么了~~
没有 PIL 还真做不了呢,当然你也可以字符打点打出来~~
看着像不像就不知道了~~~
[code] 文档上说 save 时可以识别文件名,并保存成相应的文件格式的,真牛b~~
打开 pic_09.jpg 看到一头红牛(如果保存为.png的话是头白牛,hoho)~~
试试 cow 敲进去,看到一行:hmm. it's a male.
哈,是呢,人家是长角的~~~
答案就是: BULL !~
[PC_08] working hard?页面图片是一只勤劳的小蜜蜂, 下面还有一句 what's the missing link?
点一下蜜蜂果然有个 hyper link,但是需要有账号密码认证的 :(
源文件拿来看,哦,有了~
<!--
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\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08' --> 虽然知道 un 肯定是 user name, pw 肯定是 password ~
可就只给你这两行字也够你琢磨一阵子的,还好我知道它们是啥意思~
据说 bzip 压缩的压缩文件都是 BZ 开头的,嗯~~~ 又一次领略到 python 库用起来真简单,回忆用 c++ 写 rar 的解压程序时候用了一天多~~ T.T
[code] huge & file ,搞定~
[PC_07] smarty玩物丧志,几天电子琴玩的很 high,差点忘了 python 了~~
ms当年第一次看人玩 pythonchallenge 就是从第七关开始,所以知道是什么套路,只要看看相关的模块就行了
这关网页上一张彩色图片,图片上有不同灰度的一条灰色方块,读一下方块的色深值,转换成 ASCII 就可以了~
因为想尽量用标准库来做,于是在 library reference 里翻啊翻,看到一个 imgfile 模块,虽然简陋(只能处理 RGB 图像,而且是把图像文件存到一个 string 里),不过这关用用应该也够了,谁知用了就说找不到模块,气得我直接去翻文件夹还是没有,文档上明明说是 build-in module 么~ @.@
无奈还是去下载了 python image library,打出来的结果是
"smart guy, you made it. the next level is [105, 110, 116, 101, 103, 114, 105, 116, 121]"
靠,居然不直接告诉你,还要再转一遍 ASCII,简直多此一举么
如法炮制,本关结果 integrity
[code] PS: 最后发现那个 imgfile 模块 "It is available only on Silicon Graphics machines"
-.- 那好吧... 反正我做完了~~~ \o/~~~
幸福在哪里?早饭的时候在新闻频道看到《纪事》栏目做的一期节目,幸福在哪里
只简单的两个问题:
——你幸福吗?
——你认为幸福是什么?
记者扛着摄像机走遍了全国来寻找答案
工人,司机,学生,情侣,青海寺庙中年迈的僧人,正在农村操办婚事的青年,父亲去世母亲出走帮爷爷送牛奶的小女孩……
几乎所有的人都说自己是幸福的,然而什么是幸福,有一半的人回答 不知道
幸福是什么?在哪里? 一个司机说:幸福么,我开车赚了钱就很幸福,赚不到钱就不幸福
幸福是对物质的占有?
看到那个送牛奶的小女孩时,妈很同情她的身世,可是她分明灿烂地笑着,那笑容很幸福
幸福是对生活的习惯?
青海一座寺院中的活佛说:出家人私心杂念较少,其他人幸福
幸福是对拥有的满足?
……
我猜,幸福是一种对比,
别人与自己的对比,过去与现在的对比,梦想与现实的对比,需要与拥有的对比,付出与收获的对比
每个人心中都有一杆天平,幸福与不幸就摇摆在这几对对比之中,
想要获得幸福吗?调整你的天平吧
我幸福吗?
2006/2/10 半年多过去了 ...生活还是一样么?
未来是什么颜色的?
虽然很努力,但是能改变多少呢?
命运一抬手,轻松的把我抛到另一个境况,我要适应吧,我会适应吗?
终归没有破釜沉舟的魄力和勇气呃~
可是平庸太让人沮丧了,一点点来吧
狗狗说成熟是有肚量去容忍不能改变的事情,有勇气去改变可以改变的事情,有智慧去区分这两类事情
我差得远呢…… 还有的休息么?
RPG role characteristicmazha的個人資料
不就是谦虚了一下数学么,智商居然只有 68 ~
哼~~ 2006/2/9 MSN Spaces MetaWeblog API今天无所事事,研究了一下 MSN 的 MetaWeblog API,就是一套基于 XML-RPC 协议的远程方法调用接口~
不算是新技术了,RPC 和 XML 两种技术很自然的结合~~
主要关心的还是它到底给出了那些接口,结果比较令人失望~
明确给出的只有 8 个最基本的方法,不过的确在 spaces 上也做不了什么其他的事了~
打算一会写点代码测试一下,说不定会有一些新发现和惊喜~
比如支持的 HTML tag 比在线编辑多几个什么的,YY ing~~
看了 M$ 官方的 demo 代码,主要用的就是 CookComputing.XmlRpc 这个 namespace ,代码虽然很短,但是基本功能都介绍了,因为本来就没什么内容么~~
python 2.0 还是 2.2 以后有一个 module xmlrpclib,也是专门干这个的,一会去试用一下~
[ 附:MSN Spaces XmlRpc 主要参数 ]
service endpoint: https://storage.msn.com/storageservice/MetaWeblog.rpc date-time type: datetime.iso8601 / UTC encoding: UTF-8 transport protocol: HTTPS/SSL
username: <the name of the MSN Space> password: <the user’s secret word> Methods:
metaWeblog.newPost posts a new entry to a blog. metaWeblog.editPost edits an existing entry on a blog. metaWeblog.getPost returns a specific entry from a blog. metaWeblog.getCategories returns the list of categories that have been used in the blog. metaWeblog.getRecentPosts returns the most recent draft and non-draft blog posts in descending order by publish date. blogger.deletePost deletes a post from the blog. blogger.getUsersBlogs returns information about the user's space. blogger.getUserInfo returns basic user information, such as name, email address, and userid. 2006/2/7 郁闷事~~1. 没看到下大雪。虽然一下火车就看到银装素裹的世界,但是到现在还没有赶上一场爽快的雪,只有一天早上朦胧的看到窗外飘着丁点大的雪粉,起床后连丁点都没了,倒是新闻上杭州南京大雪下得不亦乐乎,地磁极果然要移动了么?~
2. DC 不听话。或者电脑不听话,反正我无论如何也没法把 CF 卡上的照片导到电脑上。唉,匆忙回家,没带读卡器没带连接线,一次同学会就照得满满了,好不容易过了初五去电脑城 5 块钱买了根 USB 线,回来却怎么连也找不到设备,系统服务能开得都给它开了,没辙了~
3. 进校代理挂了。刚回来的几天用的好好的,还在窃喜有网络在家在杭一个样,隔三差五的逛逛 ftp,拖拖软件,找找电子书,谁知道刚过了年就挂了 ~>.<~ 校内没人维护啊,人不在果然还是有区别的,算了,反正最开始就做了没代理的打算了么~
4. 差不多行了……
买了个电子琴~昨天陪妈逛街,本来打算买些衣服,可是逛了一下午啥衣服都没买,北方冬天没有我喜欢的浅色衣裤~ :(
在联华超市的玩具柜台看到一个电子琴,弹了几下很有趣,于是对比了几种,买了一个回来~~ \o/~~~
555,可惜我是音乐盲,连 do ri mi 都不知道是哪个键的~ -.-
乱弹啊乱弹~~
PS: 今天妈去串门,拎回来一把吉他,原来是表弟的,现在他不玩了,汗汗,我没音乐细胞的哇~~~ [PC_06] now there are pairs原文件中的第一句便是 <html> <!-- <-- zip -->
自然的把 url 中 channel.html 换成 channel.zip 得到一个 zip 文件~
先用 winrar 察看了一下,其中 910 个 txt 文件,发现 readme.txt,读之:
[readme.txt] 和第 4 关一样的规则哈~ : )
好歹这次从本地读,不会那么痛苦了,从上次的标程中学了些技巧,代码好看些了~
[code] 输出结果: 46145.txt : Collect the comments.
噢,那好吧,找 comments
>>> print z.comment 发现压缩包没有注释,顿时傻眼~
又用 winrar 仔细检查了一下,没找到
再用 uedit 打开压缩包,还是没什么发现
思考半天无果,rhythm 提示说每个文件有各自的注释的,再翻文档,噢,值得一试~~
修改了一下代码:
[code] 输出文件很 pp~
[output] 敲入 hockey.html 得到:
it's in the air. look at the letters.
不用多想了, OXYGEN ! 2006/2/6 [PC_05] peak hell页面上只写着 "pronounce it",源文件中有提示"peak hell sounds familiar ?",我单词量贫乏于是大感头痛,只好打开金山词霸,从 p 开始翻发音近似的,估计是 pe 或 pi 开头发音有'k'而且有可能含有 L 的,还算幸运,试了 pecul,pekoe,pexol,pickel 等词后,成功地找到了 pickle,敲入 url ,看到 yes! pickle!
虽然找到了这个关键字,可还是一头雾水,于是就把 pickel 的同义词又试了一遍,连 salt 这样的词都试了,结果当然是一无所获 :(
[2006-1-31 4:11:01]
============================================================
在读 python library reference 的时候看到了 pickle 库,心中豁然开朗,原来是要用它!花了一天把这个库研究了一遍,原来是用来对象序列化的,可是拿什么东西来 pickle 或 unpickle 呀~
[2006-2-2 00:00:00]
============================================================
过年诸事繁杂,接连串了几天亲戚,加上同学会,没时间来玩
问了一下 rhythm,说有一个输入文件,赶紧再检查一边源文件,果然里面一行 <peakhell src="banner.p"/> 被窝当作垃圾 tag 无视掉了,猪头啊猪头~~
拿到 banner.p 后发现是个 pickled 对象,Unpickler.load 解出来,是一个 list,这里又画了些脑筋,最后关头终于发现奥秘,list 中的每个子 list 为一行,将子 list 的 tuple (a, b) 中 a 打印 b 次组成一幅图案。。。
[code]
[output]
找到 channel, 可喜可贺~ 2006/2/4 初中同学聚会~说起来初中毕业之后,和原来同学联系的就不很多了~
相识10年,离别8年,再见面时又熟悉又陌生,可相聚时无拘无束的感觉一点都没变,总的来说各同学读书的还在读书,工作的早已工作,结婚的不多,有小孩的还未出现~
坤和贝贝十年之恋始终在一起,郎才女貌令人羡慕;麒大班长英姿依旧,举手投足尽显伟人风采,让人相形见绌;超越兄弟掌管家族企业,对初中同学情谊记挂尤深;若谷直攻硕博,依然学海遨游;天祥人俊如龙,事业有成,在哈市已然小有名气;宇一表人才,内外兼修,成为人民警察新鲜血液;子洋是我毕业后最想念的人之一,看到他就想起那时一起玩闹,一起闯祸的情形;烨变化颇大,初见简直没出来,身子比那时瘦了三分之一;而诗博和鑫倒是身形一如当年,看到倍感亲切;春阳仿佛格外激动,尤其酒过三巡后动情之致,喜而泣言兄弟情谊;磊说可能来沪杭一带工作,这下相见机会多多;志宇,启龙和以前没大变化;女生们都比印象中的漂亮多了,后悔为啥当时没发现呢~@.@~
好像大学毕业班搓也没喝下这么多酒,啤酒白酒一轮一轮的上,居然没有醉倒,K歌结束回到家才开始觉得有点头痛,躺在床上欣然睡去,一觉醒来意犹未尽~
找回老朋友的感觉真好~ 2006/1/31 [PC_04] follow the chain第三关花了我一天多...
========================================================== 这几天过年被迫串门,都没时间玩 PC 了 : ( 这关思路很简单,只要 "follow the url chain" 就可以了~ [code]
由于每页获得的信息格式都一样,我就偷懒的只读最后 5 个字节转成 int~
嗯,胜利~ \o/~~~ code on spaces经常要把代码贴到 space 上,总是手工换字体调颜色加边框太麻烦了~ PS: 总算找到一款等宽字体,前面贴的代码难看死了 -.-
[code] 2006/1/29 除夕飘渺抢楼看到 zjuonline 的抢楼公告,就想去玩玩~
下午 c++ 写了几小时 winsock ,总算登陆发贴一般操作没问题了,
可是把想要发贴时间精确到88时间的秒级以上还是搞不定,
没办法获得主机时间,只想了两个折衷方案:
1)把自己机器时间设置的和88主机尽量一致,这个多试几次能近似到秒,优点是不受网络条件限制,缺点是如果主机时间临时调整的话就没法一致了。
2)想知道时间的时候就发一贴,再去读帖子里的时间,这种方法优缺点刚好与上面的对调,网络的延时对获取的时间精确度影响很大。
我最终用的是第二种,虽然比第一种有些麻烦,但网络条件好的话能比第一种更精确 ...
另外系统有发贴时间限制,一次最多6片帖子,这个是硬限制了,除非用很多线程 ~
可 c++ 的多线程太麻烦,有点后悔没用 java 写 : (
写好之后想想只做到这样的话到最后还是只能靠碰运气,就有点不想去玩了~
然后在 test 板看到 ob 也在测试程序,居然上了十几个mj -.- 我从来没想过给 mj 抢浮云~
一秒之内发贴几十篇,真狠嘞~~
除他之外还有好多好多人,用脚本的用脚本,用快捷键的用快捷键,霎时间 test 板一片喧嚣~
心里算算这样的形势下一个 id 抢到整的数学期望也太低了,遂决定放弃,我从来不喜欢买彩票的~
0点将至时果然热闹非凡,一秒钟内至少出现几屏帖子,服务器没有崩溃或出现严重bug,顺利通过此次压力测试,让人感到欣慰。瞬时数据不知道主机有没有纪录,很难得的资料啊。
|
|||||||||||||||||||||||
|
|