gist: https://gist.github.com/genesislive/5098123
#!/usr/bin/env python# -*- coding: UTF-8 -*- # http://www.pythonchallenge.com/pc/def/channel.html# <!-- <-- zip --># see readme in http://www.pythonchallenge.com/pc/def/channel.zip import osimport reimport urllibimport zipfile nothing = '90052'pattern = 'Next nothing is (\d+)'file_pattern = '%s.txt'channel_file = 'channel.zip'uri = 'http://www.pythonchallenge.com/pc/def/channel.zip'comments = [] if not os.path.exists(channel_file): urllib.urlretrieve(uri, channel_file) file = zipfile.ZipFile('channel.zip') while True: try: nothing = re.search(pattern, file.read(file_pattern % nothing)).group(1) except: # Collect the comments. print file.read(file_pattern % nothing) break # print file.getinfo(file_pattern % nothing).comment) comments.append(file.getinfo(file_pattern % nothing).comment) print ''.join(comments) '''********************************************************************************************************************************* **** 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 **** ****************************************************************** **************************************************************'''