美文网首页
Python Challenge[25]

Python Challenge[25]

作者: Recgat | 来源:发表于2017-02-28 14:30 被阅读0次

[Level 25]


Title: imagine how they sound

源码中看到can you see the waves?,还有图片是lake1.jpg,按套路尝试,并没有图片。waves?之前有 wav 格式的音频,试了下,得到 lake1.wav,但却是一片杂音。

但是也到此为止了。没有尝试 lake2.wav,lake3.wav……而一直到lake25.wav为止共有25个wav文件。

下载 wav 文件:

import httplib2
h = httplib2.Http('.Cache')
url = 'http://www.pythonchallenge.com/pc/hex/lake{0}.wav'
headers = {'Authorization': 'Basic YnV0dGVyOmZseQ=='}
for i in range(1,26):
  data = h.request(url.format(i),headers=headers)[1]
  with open('lake/lake{0}.wav'.format(i),'wb') as f:
    f.write(data)

把25个wav文件整成一个大小为300*300的图片:

import wave
from PIL import Image
res = Image.new('RGB',(300,300))
ws = [wave.open('lake/lake{0}.wav'.format(i)) for i in range(1,26)]
for i in range(25):
  data = ws[i].readframes(ws[i].getnframes())
  im = Image.frombytes('RGB',(60,60),data)
  res.paste(im,(60*(i%5),60*(i//5)))
res.show()

得到decent[Level 26]

小结

一个wav文件有10800帧,每三帧为一像素,所以一个wav文件有3600像素(60*60),25个就是300*300。

  1. PIL.Image.frombytes()从缓冲区中的像素数据创建图像副本。
  2. Image.paste()将另一图片粘贴到此图片中。

Python Challenge Wiki

相关文章

  • Python Challenge[25]

    [Level 25] Title: imagine how they sound 源码中看到can you see...

  • Python挑战:00~03关

    Python Challenge Python Challenge 00 网址: http://www.pytho...

  • Python挑战:04-05关

    Python Challenge Python Challenge 04 现在,我们来挑战第四关,从第三关的结果,...

  • The Python Challenge(5)

    问题链接 问题链接如下: 答案链接 答案链接如下: 解题思路 根据页面源码提示: 再点击页面图片显示: 可知是需要...

  • The Python Challenge(8)

    问题链接 问题链接如下: 答案链接 答案链接如下: 解题思路 页面和源码中无任何提示,但图片中有一条很明显的灰度线...

  • The Python Challenge(9)

    问题链接 问题链接如下: 答案链接 答案链接如下: 登陆用户名密码为huge和file。 解题思路 阅读源码有如下...

  • The Python Challenge(2)

    问题链接 问题链接如下: 答案链接 答案链接如下: 解题思路 将页面给定的字符串根据给定规则进行替换即可,规则如下...

  • The Python Challenge(3)

    问题链接 问题链接如下: 答案链接 答案链接如下: 解题思路 根据页面提示: 阅读源码,有如下内容: 编写代码从中...

  • The Python Challenge(4)

    问题链接 问题链接如下: 答案链接 答案链接如下: 解题思路 根据页面提示: 并结合页面源码中的内容,有如下代码:...

  • The Python Challenge(6)

    问题链接 问题链接如下: 答案链接 答案链接如下: 解题思路 根据页面源码提示: python中发音类似的术语有p...

网友评论

      本文标题:Python Challenge[25]

      本文链接:https://www.haomeiwen.com/subject/uhwowttx.html