分类: Python/Ruby
2010-01-31 00:09:24
|
比如在windows系统下,当输入http://www.google.cn/intl/zh-CN/images/logo_cn.gif这个图片下载地址的时候,download的图片文件竟然是这样的
而在linux系统下面则下载正常:
这到底是哪里出的问题呢?
没人帮忙,自己解决吧!
原来,图片属于二进制文件,保存二进制文件时,需要告诉python,否则python直接当成文本文件处理了
Windows中,python在写文本文件的时候,如果碰到\n,自动添加\r(如果本来就有\r就另当别论了)来符合Windows文本文件的规范。在写二进制文件的时候,则不会有这样的处理。
既然明白了原理,把上面的修改一下就可以了:
把 f = open(name, 'w') 修改成 f = open(name, 'wb')
这个问题再次证明了世界上没有灵异事件,只有未揭开的谜底……