码迷,mamicode.com
首页 > 编程语言 > 详细

【PYTHON】编码是个细致活

时间:2014-10-23 12:18:50      阅读:242      评论:0      收藏:0      [点我收藏+]

标签:style   color   io   os   ar   使用   sp   on   ad   

python逆向获取DNS时用到一个函数socket.gethostbyaddr,传入本地主机地址后报错如下:

UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb0 in position 0: invalid continuation byte

在stackoverflow上搜索到了一条线索,获取的返回值的host等于在console执行hostname获得的值,随手试了一下,输出结果是“爱琴海”,脑洞立马打开,感情是计算机名称在作祟,右键“计算机-属性-计算机名称、域、和工作组设置-更改名称”,修改计算机名称为ocean并重启生效,IDLE执行了一下:

>>> from socket import *  

>>> gethostbyaddr(‘127.0.0.1‘) (‘ocean‘, [], [‘127.0.0.1‘])

再次执行django,果然哦了。 

据悉,windows中文默认编码是gbk,和utf-8部分字符不兼容,环境变量和路径等最好使用英文名称,避免一些奇怪的错误。

 

【PYTHON】编码是个细致活

标签:style   color   io   os   ar   使用   sp   on   ad   

原文地址:http://www.cnblogs.com/learn-my-life/p/4045260.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!