python的问题,eclipse下没问题,在cmd下出错。晕死了

pyman 发布于 2011/06/11 18:45
阅读 1K+
收藏 0

在eclipse pydev下没错,但是cmd下运行报错:

Traceback (most recent call last):
  File "C:\Documents and Settings\ALLEN\Desktop\test.py", line 17, in <module>
    huoche("北京","上海")
  File "C:\Documents and Settings\ALLEN\Desktop\test.py", line 6, in huoche
    values={"txtchufa":chu.encode("utf-8"),
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0: ordinal not in range(128)

#!/usr/local/bin/python
# -*- coding: utf8 -
import sys,re,urllib2,urllib
def huoche(chu,dao):
    url="http://search.huoche.com.cn/chaxun/result.php?"
    values={"txtchufa":chu.encode("utf-8"),
            "txtdaoda":dao.encode("utf-8")
            }
    data=urllib.urlencode(values,True)
    newurl=url+data
    
    
    response=urllib2.urlopen(newurl)
    the_page=response.read()
    return the_page

huoche("北京","上海")
加载中
0
柯激情
柯激情
编码问题
0
FreeZ
FreeZ

引用来自“柯激情”的答案

编码问题
编码问题
0
asdfsx
asdfsx

顶上那个改成#-*- coding: gbk -试试

0
p
pyman

引用来自“asdfsx”的答案

顶上那个改成#-*- coding: gbk -试试

没用的啊。这个我早试验过了
0
p
pyman

引用来自“FreeZ”的答案

引用来自“柯激情”的答案

编码问题
编码问题

我知道是 编码问题。错误提示也说说编码问题。不过怎么解决呢?

为什么pydev没有错误,但是cmd出错呢?

0
renwofei423
renwofei423

huoche(u"北京",u"上海")

这样可以吗?

0
Risol
Risol
#!/usr/local/bin/python
# -*- coding:utf-8 -*-
import sys,re,urllib2,urllib
def huoche(chu,dao):
    url="http://search.huoche.com.cn/chaxun/result.php?"
    values={"txtchufa":chu,"txtdaoda":dao}
    data=urllib.urlencode(values,True)
    newurl=url+data
    response=urllib2.urlopen(newurl)
    the_page=response.read()
    return the_page
r=huoche("北京","上海")
print r
亲测成功
0
周翼翼
周翼翼

# -*- coding: utf8 - 换成

# -*- coding:utf-8 -*-

#coding=utf8

同时去掉.encode("utf-8"),如楼上所示

你永远不知道工具帮你做了什么..不要太信工具.

0
topdogs
topdogs

 reload(sys)

sys.setdefaultencoding('utf-8')

在代码的import 后面加上这两行试试
柯激情
柯激情
不要这样 这样会很恐怖。。。 这样会可能导致系统显示超级难看。。。 我在win2003server上弄一下 结果系统界面巨丑无比
返回顶部
顶部