PythonChallenge Level 5: http://www.pythonchallenge.com/pc/def/peak.html
图片下方给出了文字提示“Pronounce it”,根据PythonChallenge的尿性,右键查看网页源代码
联系前面提示知 peak hell 发音类似 python中的pickle模块,又分析源代码打开12行中的链接src,得到一串乱码字符,很想pickle模块中序列化了数据后的样式,故将其pickle.load()进内存,打印出来继续查看
拿到这一串乱码之后,想了很久,没摸到风,故Google之:其意是按照给出了的数据打印图形,空格符‘ ’打印95次,跟着‘ ’打印14次、‘#’打印5次类推。加一句代码即可按其意打印
代码如下(中间很多注释掉的是自己边做边测试内容,最后优化代码如下):
import pickle import urllib2 #import string #import json response = urllib2.urlopen('http://www.pythonchallenge.com/pc/def/banner.p') # html = response.read() # print html # f = open('pc5.txt', 'wb') # f.write(html) # f.close() # f = open('pc5.txt', 'rb') file_pic = pickle.load(response) #save the list(file_pic) to 'unserPc5.txt' # f = open('unserPc5.txt', 'wb') # s = str(file_pic) # print s # f.write(s) #demoDictList is the value we want format to output # jsonDumpsIndentStr = json.dumps(file_pic, indent=1); # print "jsonDumpsIndentStr=",jsonDumpsIndentStr; for line in file_pic: print ''.join(map(lambda pair:pair[0] * pair[1], line)) # print file_pic # f.close()
最后得到结果为channel,按惯例替换URL即可至 Level 6
PythonChallenge Level 6: http://www.pythonchallenge.com/pc/def/channel.html
点击图片下方等PayPal 捐赠按钮,果真是出来捐赠页面,没什么提示,按照pythonchallenge的尿性,检查网页源代码,分析下来顶部html标签有方的zip有些古怪,尝试将channel换成zip,出来提示“ yes, find the zip ", 退回并将“ .html " 后缀换成 .zip , Download下来文件“ channel.zip " ,其中有将近上千个数字命名的文本文件,open the readme.txt file which says " begin with 90052"
coding:
import re import os def get_Nothing(nothing, count = 1): f_name = nothing + '.txt' print 'Opening the file ', f_name os.chdir('/Python/channel') f = open(f_name, 'r') count += 1 text = f.read() print text, '\n' next_nothing = re.findall(r'\d+', text) f.close() os.remove(f_name) try: return get_Nothing(next_nothing[0], count) except IndexError: print 'Opend %s files total'%count print 'Cannot find the Nothing and all we have is this sentence:\n', text get_Nothing('90052')
solve it and get this:
collect the comments
So , what the hell are the comments ? --> search in google .
And then try use ZiPFIle module , here cames the code:
filename = './channel.zip' def download_zipfile(): import urllib2 zf = urllib2.urlopen('http://www.pythonchallenge.com/pc/def/channel.zip') output = open(filename,'wb') output.write(zf.read()) output.close() def process(): from zipfile import ZipFile file_list = ZipFile(filename) import re regex = re.compile(r'(\d+)$') comments = [] nothing = '90052' try: for info in file_list.infolist(): fn = '%s.txt' % nothing comments.append(file_list.getinfo(fn).comment) nothing = regex.search(file_list.read(fn,'r')).group() except: print ''.join(comments) if __name__ == '__main__': process()
ZipFile.infolist()
Return a list containing a ZipInfo object for each member of the archive. The objects are in the same order as their entries in the actual ZIP file on disk if an existing archive was opened
runing the code and you will get this :
then tey hockery.html and get this:
"It's in the air, look at the letters"
So is oxygen!
PythonChallenge Level 7: http://www.pythonchallenge.com/pc/def/oxygen.html
相关推荐
Python Challenge 是一个在线编程挑战网站,它旨在帮助学习者通过解决一系列有趣的谜题来提高他们的Python编程技能。这个挑战涉及到各种Python编程的概念和技术,包括基础语法、数据结构、字符串操作、逻辑判断、...
Python Challenge 是一个在线的编程挑战平台,专为Python初学者设计,旨在通过一系列有趣的谜题来提升编程技能。这个挑战包括33个不同的关卡,每个关卡都需要运用Python编程知识来解决。下面将对部分关卡的关键知识...
在处理这个问题时,你可能会发现一个URL(例如:`http://www.pythonchallenge.com/pc/return/italy.jpg`),这是Python Challenge中常见的线索。你需要使用Python的内置`urllib`库来发送HTTP请求,并获取网页内容。...
标题和描述均提到了"pythonchallenge level2官方方法集",这表明文章主要聚焦于Python Challenge网站上第二级挑战的官方解决策略集合。Python Challenge是一个知名的编程谜题网站,通过一系列精心设计的谜题来测试和...
在本题中,我们面临的是来自www.pythonchallenge.com的一个挑战,这是一个在线平台,旨在帮助学习者提高Python编程技能。挑战通常涉及解决谜题,而这些谜题的答案隐藏在代码或网页的某处。我们将深入探讨如何解第三...
PythonChallenge是一个在线编程挑战平台,旨在帮助用户提升Python编程技能。这个压缩包“每天一个PythonChallenge《任务一》-内含源码以及设计说明书(可以自己运行复现).zip”显然是针对该平台的第一个挑战提供了...
在本题中,我们将深入探讨Python编程语言在解决在线挑战平台`www.pythonchallenge.com`上的第五个问题。这个挑战通常会涉及一系列的编程技巧、逻辑思维以及对Python库的运用。我们将通过分析提供的代码和注释,理解...
在这个PythonChallenge《任务三》中,我们探讨的是一系列基于Python编程的练习,旨在提升技能、理解和解决问题的能力。挑战可能涵盖了各种Python基础知识,包括语法、数据结构、函数、模块、异常处理、文件操作等。...
PythonChallenge是一个在线编程挑战网站,旨在帮助初学者和有经验的程序员通过解决一系列有趣的谜题来提高他们的Python技能。这个压缩包文件`pythonchallenge-main`很可能包含了解决这些挑战所需的Python源代码。...
**有趣的Python Challenge编程解谜游戏第11关**介绍游戏介绍0-4关攻略5-9关攻略10关攻略第11关结果链接 介绍 游戏介绍 平时自己学python,大家肯定很是无聊,推荐一个很早之前的网页版python闯关游戏——Python ...
"Python-challenge"是一个以Python编程为主题的挑战项目,旨在帮助学习者提升Python编程技能和解决实际问题的能力。在这个挑战中,参与者将面临一系列与Python语言相关的任务,通过实践来加深对Python的理解。以下是...
Python-Challenge(1)-源码.rar 是一个针对初学者和进阶者提供的Python编程挑战资源,包含Python-Challenge-master文件夹,这个文件夹中很可能包含了练习题目、源代码以及可能的解决方案。Python Challenge是一个在线...
在“pythonchallenge:我的 Python 挑战解决方案”这个项目中,我们主要关注的是通过Python编程语言解决一系列挑战。Python是一种高级、通用的编程语言,以其简洁明了的语法和强大的功能而广受欢迎,尤其适合初学者...
### 《Python-Challenge全通攻略》知识点梳理 #### 一、Python Challenge 游戏介绍 - **背景**: Python Challenge 是一款专为程序员设计的网页闯关游戏。 - **目标**: 通过解决一系列编程谜题来揭示下一关的网址。 ...
"Python Challenge"通常指的是一个在线编程挑战网站,旨在帮助初学者和进阶者通过解决一系列有趣的问题来学习和提高Python技能。在这个挑战中,每个问题都与一个谜题或图像相关联,需要编写Python代码来解答。 首先...
### Python Challenge全通关攻略知识点详解 #### 一、游戏简介 **Python Challenge**是一个专为程序员设计的独特在线挑战游戏。玩家需要通过解决一系列谜题来解锁新的关卡,这些谜题通常涉及到编程知识,尤其是...
10. **并发和异步编程**:Python的多线程和多进程,以及asyncio库提供的异步I/O,对于优化性能和处理并发任务至关重要。 在"Python Challenge"中,你可能会遇到上述部分或全部知识点。通过解决这些挑战,你将深入...